【发布时间】:2017-03-15 08:55:10
【问题描述】:
我正在使用 mysqli 连接。
$conn = new mysqli($host, $user, $password, $database);
使用以下语法将数据存储在数据库中
$site_description = $conn->real_escape_string($_POST['site_description']);
$conn->query("UPDATE `r_site_details` SET `site_description` = '".$site_description."' WHERE `id` = ".$id);
input : Telangana's
它添加斜线。
但是当我用stripslashes 输出值时,它仍然显示字符串中的斜杠
$query = $conn->query("select * from r_site_details where id=$id")or die(mysqli_error());
$result = $query->fetch_assoc();
echo stripslashes($result["site_description"]) // output : Telangana\'s
【问题讨论】:
-
在发布表单和从数据库查询中回显变量之间发生了很多事情 - 此处未显示。您应该在不同阶段
var_dump()变量,以查看问题出在哪里,因为仅从这两行无法判断。 -
好的,让我发布我的完整脚本,谢谢@jeroen
-
您应该首先检查变量在哪个阶段具有哪些值,例如当您获取 POST 值时它可能已经转义。
-
@jeroen,希望你能看到完整的场景。
-
如果您不愿意检查变量的值,您将永远无法调试任何代码。
标签: php string stripslashes