0

在任何人询问之前,我mysql_real_escape_string()都会在每个 INSERT 上使用。但是,我希望用户能够键入撇号,但它们会以反斜杠出现。但是,我也希望他们能够使用反斜杠。

用户是受信任的,但是否可以允许这些字符同时防止 SQL 注入的可能性?

4

2 回答 2

2

是的,只需使用参数化查询。

看看这个答案

基本概念是在添加参数之前编译您的搜索查询,从而使 SQL 注入成为不可能。

于 2013-08-22T10:31:32.360 回答
-2

您可以使用函数 strip_slashes 删除撇号插入的所有斜线。

因此,您使用 mysql_real_escape_string() 将数据插入数据库。然后,当您想将数据拉到前端时,您可以通过函数 stripslashes() 运行它,它将删除所有斜杠。

您还应该考虑使用 mysqli,因为不推荐使用 mysql。

于 2013-08-22T10:33:55.650 回答