$db_col=$_POST['db_col']; //string
$db_val=$_POST['db_val']; //string
$name=$_POST['name']; //string
// connect to db
$query="UPDATE `table`.`person` SET `$db_col` = ? WHERE CONCAT(first, ' ', last) = ?;";
$stmt = $web_dbi->prepare($query);
$stmt->bind_param("ss", $db_val, $name);
$stmt->execute();
收到错误:
调用非对象上的成员函数 bind_param()
您的 SQL 语句不正确:
$query="UPDATE `table`.`person` SET `$db_col` = ? WHERE CONCAT(first, ' ', last) = ?;";
格式为:
UPDATE table SET column = ? WHERE [conditional];
您在table
和person
之间有一个点,我不知道为什么您一次只能更新一个表格时,您有两个表彼此相邻,所以这是另一个错误。
如果这不能解决问题,请执行以下操作:
echo "query is: ".$query."<br>";
在编写查询并将输出粘贴到此处后,这样我们就可以准确地看到数据库看到的内容以及错误所在:)
让我知道这是否为您解决了问题!