我有一个问题,保存$p上的database.If我保存$_POST“内容”未经修改,它的工作。但是如果我用带斜杠修改,它就不起作用了,我不明白为什么。
$_POST["content"] is text from function innerHTML
mysql_connect("XX","XX","XX");
mysql_select_db("XX");
$p=stripslashes($_POST["content"]);
mysql_query("UPDATE TEXTO SET VALOR='.$p.' WHERE id=2");发布于 2012-10-06 02:47:28
你不想在更新数据库之前去掉斜杠,实际上你想做相反的事情。我建议你
$p=mysql_real_escape_string($_POST["content"]);发布于 2012-10-06 02:46:18
这就是错误所在:
mysql_query("UPDATE TEXTO SET VALOR='.$p.' WHERE id=2");您不需要使用$p周围的句号。您可以按如下方式执行此操作:
mysql_query("UPDATE TEXTO SET VALOR='$p' WHERE id=2");或者:
mysql_query("UPDATE TEXTO SET VALOR='".$p."' WHERE id=2");字符串两边的双引号将在计算时插入变量。
然而,
您真的应该考虑不再使用mysql_*函数,因为它们已被弃用;PDO或mysqli_*都会让您编写更安全的代码。
https://stackoverflow.com/questions/12752218
复制相似问题