【发布时间】:2014-03-27 19:02:21
【问题描述】:
//变量在这个函数之外声明。我使用$_POST 使用html 表单标记检索另一个.php 文件中的每个用户输入。变量$db 是我的数据库连接。
函数 insertintodb ($db, $avar, $bvar, $cvar) { /* 使用 PDO bindParam 时如何判断我的变量的值是什么?我输出 $avar 以查看它在此函数中的值。如何判断 PDO 是否真的将“:firstname”绑定到 $avar?其他变量也是如此。 */
echo 'before <br>';
echo $avar;
echo '<br>';
//firstname, midinitial, lastname are values in my database.
//name is my table I am inserting into.
$insertname = "INSERT INTO name (firstname, midinitial, lastname)
VALUES (:firstname, :midname, :lastname)";
echo 'before PDO prepare<br>';
echo $avar;
echo '<br>';
$stmt = $db->prepare($insertname);
$stmt->bindParam(':firstname', $avar);
$stmt->bindParam(':midname', $bvar);
$stmt->bindParam(':lastname', $cvar);
echo 'after binding variables using bindParam <br>';
echo $avar;
echo '<br>';
$stmt->execute();
echo 'after executing <br>';
echo $avar;
echo '<br>';
}
【问题讨论】:
-
定义“成功”
-
mysql.log 是唯一可以从准备好的语句中找到插入的 sql 查询的地方
-
如果没有抛出异常,只执行查询。如果结果正确,则您的变量绑定正确。
-
查询是在 DB 上准备的,因此无法查看完整的 SQL 查询。
-
@user2864740 是的,这就是我的意思。我的错:D