可能重复:
在 PHP 中停止 SQL 注入的最佳方法
我很好奇在将文本字符串存储在数据库中之前,我应该在引用文本字符串上运行哪些函数。
如果它包含单引号以及其他双引号或其他任何内容,我想处理它。
从最有效到最少,您可以做四件事(我在这里假设 MySQL,因为它是与 PHP 最常见的组合):
addslashes()
并且stripslashes()
可能在特定情况下有效 - 但除非您确切知道自己在做什么并且除非您确定它不会使您的代码容易受到多字节注入攻击,否则不要使用它们。mysql_real_escape_string()
如果您使用 MySQL,请使用。
就php而言,您应该使用trim() and stripslashes()
,如果您使用的是mysql,那么mysql_real_escape_string()
您可以按以下顺序使用它们:
首先stripslashes()
然后
然后修剪()
mysql_real_escape_string()