繁体   English   中英

mysqli_real_escape_string没有转义任何东西

[英]mysqli_real_escape_string not escaping anything

我正在使用mysqli_real_escape_string转义单引号和双引号等,但是它没有转义任何内容。 我的代码如下

$con = mysqli_connect("ip","db","pw","db");
$formtext = $_POST['formtext'];
$formtext = mysqli_real_escape_string($con, $formtext);
mysqli_query($con, "INSERT into table (formtext) VALUES ('$formtext')")
    or die();

插入表格后,“ formtext”字段不包含任何转义符(反斜杠)。 发生这种情况的可能原因是什么?

保存到数据库的数据包含“转义”或转义序列或多余的斜杠。

数据库包含提供的实际数据 ,这是该功能的关键点:转义输入以用作 SQL语句中的SQL 字符串内容

mysqli_real_escape_string转义字符串中的特殊字符以用于SQL语句 (作为字符串文字内容),同时考虑到连接的当前字符集。


如果要更改数据(如果这样的话,请准确说明更改的内容 )-注意无论如何仍应使用“ real_escape”或(更好) 参数化查询 -然后为任务使用适当的函数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM