在我的页面上,当我向服务器输入数据时,它会在 ' 和 " 之前自动添加反斜杠。我猜这是因为 mysql_real_escape_string,出于某种原因,它仅在我的远程服务器上添加了反字符串,而在 localhost 上它不添加它们。主要问题是我稍后显示输入的值,这会导致两个问题:1.反斜杠使文本不可读,眼睛不舒服。2.它删除了部分数据,因为它限制为 140 个字符。我能做什么防止他们?我的代码:
$city = mysql_real_escape_string($_POST['city']);
//here preaty regular insert query.
查询后输入的数据用反斜杠插入到数据库中。然后在另一个页面上:
//get data from DB
echo $city;
像这样剥离斜杠:
echo stripslashes($city);
无济于事,因为它不能解决问题 #2 任何帮助和想法都会被应用。
编辑:如果我有如下所述的 magic_quotes 模式,是否意味着我不必使用 mysql_real_escape_string?