季节选择查询的mysqli_real_escape_string?

时间:2013-11-01 00:49:22

标签: php mysqli

目前我正在使用这个:

$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吗?

1 个答案:

答案 0 :(得分:2)

我建议使用带有绑定变量的预准备语句,但是如果要使用此表单:

  • 如果值应该是整数,我会转向int(并删除引号...);
  • 您应该使用mysqli_real_escape_string并在值为字符串时引用该值,即使它来自受信任的来源(如会话),因为字符串可能包含'字符,这会破坏您的查询。