繁体   English   中英

PDO只插入一条记录

[英]PDO insert only one record

我一直试图克服这个问题一段时间,我需要你的帮助。

下面的代码只在mysql表中插入一条记录,只有一条记录。 来自html表单的数据发布得非常好,但很简单,不会记录多次。 我也使用phpmyadmin,我不知道是什么问题。 如果你能帮助我的话,我会感激不尽。

这是代码:

   try {

    $DBH = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass); 
    $STH1 = $DBH->query("SELECT isim, adet, kategori 
                             FROM stock 
                             WHERE isim = '$isim' AND kategori = '$kategori'");
    $STH1->setFetchMode(PDO::FETCH_ASSOC);
    if($STH1->rowCount() == 0) {
        echo "There is no such record";
    }
    else {

        $STH2 = $DBH->prepare("INSERT INTO outgoing 
                                       (isim, adet, nereye, cikis_tarih, kategori) 
                                       values 
                                       (:isim, :adet, :nereye, :cikis_tarih, :kategori)");
        $STH2->bindParam(':isim', $isim, PDO::PARAM_STR);
        $STH2->bindParam(':adet', $adet, PDO::PARAM_STR);
        $STH2->bindParam(':nereye', $nereye, PDO::PARAM_STR);
        $STH2->bindParam(':cikis_tarih', $cikis_tarih, PDO::PARAM_STR);
        $STH2->bindParam(':kategori', $kategori, PDO::PARAM_STR);
        $STH2->execute();

    }    

}

catch(PDOException $e) {
    echo $e->getMessage();
}


?>

而不是做:

$STH2->bindParam(':isim', $isim, PDO::PARAM_STR);
$STH2->bindParam(':adet', $adet, PDO::PARAM_STR);
$STH2->bindParam(':nereye', $nereye, PDO::PARAM_STR);
$STH2->bindParam(':cikis_tarih', $cikis_tarih, PDO::PARAM_STR);
$STH2->bindParam(':kategori', $kategori, PDO::PARAM_STR);
$STH2->execute();

通过数组执行:

$STH2->execute(array(':isim'=>$isim,
                                ':adet'=>$adet,
                                ':nereye'=>$nereye,
                                ':cikis_tarih'=>$cikis_tarih,
                                ':kategori'=>$kategori));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM