我有简单的表单来编辑网站内容: - 标题的文本输入 - 内容的文本区域
添加内容时,没有问题,所有情况都会正常添加:
$chead = mysql_real_escape_string(stripslashes($_POST['chead']));
$ctext = mysql_real_escape_string(stripslashes($_POST['ctext']));
但是当编辑包含
的文章时$chead = 'sdsfsf' "sdgsdgs"ggdsfsdg
$ chead ='sdsfsf'
并且"sdgsdgs"ggdsfsdg
将丢失!
mysql_real_escpae_string
有什么问题?
感谢
答案 0 :(得分:0)
您需要追踪信息丢失的位置,这可能不是mysql_real_escape_string
。
检查正在生成的$chead
值(在您指责特定功能损坏数据之前,确保它已经存在)。然后检查您正在生成的SQL命令并确保它正常工作。插入/更新记录后检查数据库以及当您要求返回文章时从数据库返回的值。
根据我的经验,它更可能是数据库交互中的程序员错误,或者比PHP导致麻烦的HTML生成。如果您确实将问题跟踪到mysql_real_escape_string
,则可能需要重新安装PHP和MySQL。