这里还有一个关于mysql pdo更新语法的问题。我已经在不同资源(如stackoverflow)中搜索了以前发布的问题,但仍然找不到我的查询工作!这里需要帮助。
$allowed = array("col1","col2","col3");
$values = $_POST['id'];
$sql = "UPDATE mytable SET ".pdoSet($allowed,$values)." WHERE
id=?";
$stmt = $pdo->prepare($sql);
$stmt->execute([$values]);
更新#1。
添加了my pdoset()函数;
很少编辑以前的代码片段,特别是查询中更改的id=:id部分。
function pdoSet($allowed, &$values) {
$set = '';
$values = array();
foreach ($allowed as $field) {
$set.="`".str_replace("`","``",$field)."`". "=:$field, ";
}
return substr($set, 0, -2);
}
$allowed = array("col1","col2","col3");
$values["id"] = $_POST['id'];
$sql = "UPDATE mytable SET ".pdoSet($allowed,$values)." WHERE id=:id";
$stmt = $pdo->prepare($sql);
$stmt->execute($values);
暂无答案!
目前还没有任何答案,快来回答吧!