如何防止\出现在引号旁边?[复制]

How To Prevent \ Showing Up Next To Quotation Marks? [duplicate]

提问人:rockoversweden 提问时间:10/18/2021 最后编辑:Dharmanrockoversweden 更新时间:10/19/2021 访问量:41

问:

我的脚本有它,所以用户将输入文本,它将进入 MariaDB 数据库,然后回到屏幕中以简化它。但是,当用户输入 or 时,它将以 或 的形式进入数据库。我认为这是为了防止MySQL注入攻击,但是有什么方法可以防止它回到屏幕上逃脱?我的简化代码是'"\'\"

//$con is the connection
<?php
$msg = htmlentities(mysqli_real_escape_string($con, $_POST['message']));
$insert = $con->prepare("INSERT INTO `db` (message) values(?)");
$insert->bind_param("s", $message);
$insert->execute();

然后它会从正常读取数据库中将其打印出来,没有什么奇怪或意外的。

php mysqli 转义 sql 注入

评论

0赞 u_mulder 10/18/2021
使用是没有用的,因为预准备语句做同样的事情。mysqli_real_escape_string
1赞 Tangentially Perpendicular 10/18/2021
您正在使用预准备语句。这是一件好事™,因此您不需要先转义数据。您永远不应该对要发送到数据库的数据使用。它用于输出到浏览器。htmlentities()
0赞 ysth 10/18/2021
@TangentiallyPerpendicular你应该回答这个问题

答: 暂无答案