如何在PHP Prepared Statements中使用“mysqli_real_escape_string”?

时间:2016-08-15 18:04:08

标签: php mysqli

我正在使用PHP准备语句mysqli 但我找不到下面的代码

mysqli_real_escape_string

如何在PHP准备语句mysqli中使用上面的代码。* 它是这样的吗?

 $stmt->escape_string

2 个答案:

答案 0 :(得分:3)

发布为社区维基。我不想要代表这一点。

使用mysqli_real_escape_string() 准备好的陈述毫无意义。

这是一个或另一个。

阅读使用MySQLi_预处理语句的手册:

然而......你可以同时使用两者,而不是两者同时使用。

  • 坚持为他们准备一份准备好的声明,你的世界将会变得更加美好。

答案 1 :(得分:2)

准备好的查询(如果使用得当)将确保数据被正确转义以进行安全查询,因此您根本不需要使用mysqli_real_escape_string。你正确地使用它们,只需要改变一件小事。因为你正在使用'?'占位符,最好通过execute方法传递params。

$ SQL->执行(阵列($测试));

如果您将其输出到页面时要小心,数据库清理并不意味着在HTML中显示它是安全的,因此也可以在其上运行htmlspecialchars()。 以下是prepared statements and real_escape_string

中此问题的链接