-2

可能重复:
在 PHP 中防止 SQL 注入的最佳方法?

我制作了一个 PHP 脚本来提取 xml 值并将它们插入到 SQL DB 中。

然而,这些字符串有各种符号、反斜杠、%、*、'等。通常我最终会出错。

You have an error in your SQL syntax; check the manual that corresponds to your MySQL        server version for the right syntax to use near 's demanding business environment. 
Product Lin' at line 2

我已经尝试了一些类似“stripslashes”等的东西。但我似乎无法找到“保护”变量以干扰我的 SQL 的命令。

有任何想法吗 ?

4

2 回答 2

2

如果您使用的是 PHP mysql 模块,那么

 $escaped_string = mysql_real_escape_string($your_variable);

应该做的伎俩。

参考:http ://www.php.net/manual/en/function.mysql-real-escape-string.php

(如果您使用 PDO 或 MySQLi,相关链接也在那里)

于 2012-10-07T10:16:16.797 回答
1

如果您使用的是旧mysql_query()系统,则应mysql_real_escape_string()在将字符串插入 SQL 之前使用以转义字符串。像这样 :

$myStringEscaped = mysql_real_escape_string($myString);
于 2012-10-07T10:16:55.797 回答