目前我正在使用这个:
$result=mysqli_query($sqlHp,"UPDATE database.account SET coins='500' WHERE id='".$_SESSION["userid"]."'");
现在我的问题是,我应该将此查询更改为:
$result=mysqli_query($sqlHp,"UPDATE database.account SET coins='500' WHERE id='".mysqli_real_escape_string($sqlHp,$_SESSION["userid"])."'");
或者当我使用SESSION时不需要mysqli_real_escape_string吗?
答案 0 :(得分:2)
我建议使用带有绑定变量的预准备语句,但是如果要使用此表单:
int
(并删除引号...); mysqli_real_escape_string
并在值为字符串时引用该值,即使它来自受信任的来源(如会话),因为字符串可能包含'
字符,这会破坏您的查询。