【发布时间】:2017-03-15 06:33:10
【问题描述】:
我正在尝试创建一个$mysqli->prepare 语句,而不是使用我拥有的POST 值作为值,我想使用它们来选择我正在更新的元素。该数组来自上一页上的一组多选 html 项。
foreach($_POST['times'] as $val){
if(!($stmt = $mysqli->prepare("UPDATE stud_sched SET ? ='a' WHERE s_id = (?)"))) {
echo "Prepare failed: " . $stmt->errno . " " . $stmt->error;
}
if(!($stmt->bind_param("sd",$val, $pid))){
echo "Bind failed: " . $stmt->errno . " " . $stmt->error;
}
if(!$stmt->execute()){
echo "Execute failed: " . $stmt->errno . " " . $stmt->error;
}
$stmt->close();
}
但是,我得到以下信息:
注意:试图在第 107 行(绑定语句)的 /nfs/stak/students/s/searsjo/public_html/student_added.php 中获取非对象的属性
准备失败:致命错误:在第 109 行的 /nfs/stak/students/s/searsjo/public_html/student_added.php 中的布尔值上调用成员函数 bind_param()
这似乎是我应该能够做到的,但我找不到任何有关它的信息。有人有什么建议吗?
谢谢!
【问题讨论】:
-
你不能绑定字段名,over。