Php sprintf更新时出错,我不明白为什么会显示此错误
这是我的密码, 然后返回mysql\u查询- 您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以了解在第1行“=3,Php sprintf更新时出错,我不明白为什么会显示此错误,php,sql,printf,Php,Sql,Printf,这是我的密码, 然后返回mysql\u查询- 您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以了解在第1行“=3,fav2=2,fav3=1,fav4=1,其中username=skytel”附近使用的正确语法 如何修复它?由于缺少SET function secure2($sec) { return mysql_real_escape_string(htmlspecialchars(trim($sec))); } $fav1 = secure2($_GET['fav1'
fav2
=2,fav3
=1,fav4
=1,其中username
=skytel”附近使用的正确语法
如何修复它?由于缺少
SET
function secure2($sec) {
return mysql_real_escape_string(htmlspecialchars(trim($sec)));
}
$fav1 = secure2($_GET['fav1']);
$fav2 = secure2($_GET['fav2']);
$fav3 = secure2($_GET['fav3']);
$fav4 = secure2($_GET['fav4']);
$jaminona = $_COOKIE['user2'];
$sql22 ="";
$sql22 = sprintf("UPDATE `members` `fav1`= %s,`fav2`= %s,`fav3`= %s,`fav4`= %s WHERE `username` = %s", $fav1, $fav2, $fav3,$fav4,$jaminona);
您缺少
SET
如果您有能力这样做,请不要再使用mysql.*
函数,它们已被弃用,并将在未来的PHP版本中删除。mysqli
或PDO
驱动程序中准备好的语句允许您执行与开箱即用非常类似的操作。此外,还应引用字符串。('%s'
)。只有最后一个答案,因为其他答案都是整数,如果你愿意,你可以编辑我的答案。是的,弗雷德,你得到了吗it@Fabio:完全错过了那部分。谢谢但不能仅编辑2个字符。
$sql22 = sprintf("UPDATE `members` SET `fav1`= %s,`fav2`= %s,`fav3`= %s,`fav4`= %s WHERE `username` = %s", $fav1, $fav2, $fav3,$fav4,$jaminona);
//^Here
UPDATE table
SET column=value
WHERE colum=?