PHP mysql_real_escape_string()返回`NULL`

时间:2010-05-18 10:51:49

标签: php

我正在使用PHP V5.1.6并试图从我的$_GET数组中转义查询字符串。但是我的脚本在转义后返回NULL

似乎mysql_escape_string()工作正常,但已弃用,所以我不想使用它。

检查过phpinfo() MySQL lib后,我看到的内容都很好。有没有人以前经历过这种事情?

$term = $_GET['q'];

var_dump($term); // string(7) "richard" 
echo "<br />";

$sterm = mysql_real_escape_string($term, $db);

var_dump($sterm); // NULL 

这对我来说很奇怪,我无法想象为什么这个功能不起作用。

1 个答案:

答案 0 :(得分:11)

您确定要运行MySQL连接吗?这是一个requirement for mysql_real_escape_string()工作:

  

注意:在使用mysql_real_escape_string()之前需要MySQL连接,否则会生成级别E_WARNING的错误,并返回FALSE。如果未定义$link_identifier,则使用最后一个MySQL连接。