我对我的变量做了以下保护:

$ad_title=htmlentities($ad_title);
$ad_title=mysql_real_escape_string($ad_title);
$ad_title=stripslashes($ad_title);

但每次我试图提交一个包含引号(')的字符串时,都会将其识别为错误的SQL查询。
有谁能告诉我我错过了什么吗?
我知道应该把它修好,但没有。

最佳答案

你的问题是,stripslashes正在撤销mysql-real-escape-string所做的操作。
例如

starting out with:  Miles O'Brien
after m_r_e_s(): Miles O\'Brien
after strip_slashes: Miles O'Brien

07-25 22:58