在SQL中允许使用撇号

时间:2013-08-22 10:28:04

标签: php mysql

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

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

2 个答案:

答案 0 :(得分:2)

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

查看此answer

基本概念是在添加参数之前编译搜索查询,从而无法进行SQL注入。

答案 1 :(得分:-2)

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

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

你也应该考虑使用mysqli,因为不推荐使用mysql。