为什么bindvalue没有插入表?

时间:2013-06-13 10:13:55

标签: php pdo bindvalue

我有这些疑问:

$sql="insert into m_ruangan (RG_ID,RG_Nama,RG_Kapasitas,RG_Keterangan,RG_AktifYN,RG_UpdateID,RG_UpdateTime) ".
        "values (:field1,:field2,:field3,:field4,:field5,:field6,:field7); ";

$stmt->bindValue(':field1', $result['RG_ID'], PDO::PARAM_INT);
$stmt->bindValue(':field2', $result['RG_Nama'], PDO::PARAM_STR);
$stmt->bindValue(':field3', $result['RG_Kapasitas'], PDO::PARAM_INT);
$stmt->bindValue(':field4', $result['RG_Keterangan'], PDO::PARAM_STR);
$stmt->bindValue(':field5', $result['RG_AktifYN'], PDO::PARAM_STR);
$stmt->bindValue(':field6', $result['RG_UpdateID'], PDO::PARAM_STR);
$stmt->bindValue(':field7', $result['RG_UpdateTime'], PDO::PARAM_STR);

$stmt =$m_f->cdb->prepare($sql);
$stmt->execute();

当我运行它时,它显示没有错误,但该值不会插入表中。 我正在使用循环插入

知道为什么会出错吗?

2 个答案:

答案 0 :(得分:2)

您需要prepare bindValue之前的$stmt =$m_f->cdb->prepare($sql); $stmt->bindValue(':field1', $result['RG_ID'], PDO::PARAM_INT); $stmt->bindValue(':field2', $result['RG_Nama'], PDO::PARAM_STR); ......... $stmt->execute(); 语句,

{{1}}

答案 1 :(得分:0)

你说你没有看到错误。您确定启用了PDO错误吗?

$connection = new PDO($connection_string); 
$connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 

您可以选择以下其中一项:

PDO::ERRMODE_SILENT: Just set error codes.
PDO::ERRMODE_WARNING: Raise E_WARNING. 
PDO::ERRMODE_EXCEPTION: Throw exceptions.
编辑:我认为Rikesh的评论描述了这个问题。