PHP / MySQL:转义字符串未作为转义插入到mysql表中

时间:2016-04-22 12:54:32

标签: php mysql escapestring

我已经搜索了几个小时的答案,但找不到任何东西...... 我从表单中转义了一个字符串,它在单引号之前添加了一个斜杠。但是,一旦插入数据库,它就不会显示斜杠???

$db = new mysqli($host, $username, $password, $database);
$db->set_charset("utf8");

if($db->connect_errno > 0){
   die('Unable to connect to database [' . $db->connect_error . ']');
}

$country = $_POST["country"];
$country = $db->escape_string($country);
  

注意:我已经检查过字符串确实是在这里转义的。如果输入是“加拿大”,则回显   $ country导致\'Canada \'这是正确的。

if ($db->query("INSERT into countries (country) VALUES ('$country')")) {
   printf("%d Row inserted.\n", $db->affected_rows);
} else {
   printf("Error: %s\n", $mysqli->sqlstate);
}

现在,当我查看数据库表时,记录显示'Canada' 没有斜线???

0 个答案:

没有答案