我创建了一个表单,它接受一个文本块并将其插入到SQL数据库中。当用户使用单引号时,我不断收到SQL错误。我添加了addslashes()函数,一切都很好。但根据w3,php应该已经这样做了。此外,当我从数据库中检索文本时,所有撇号都被替换为 字符。
有谁知道发生了什么?我甚至不知道从哪里开始。
答案 0 :(得分:0)
使用这些函数在db中插入数据或从db中插入数据 这些将解决单引号或双引号以及所有特殊章程的问题。
function DBin($string)
{
return trim(htmlspecialchars($string,ENT_QUOTES));
}
function DBout($string)
{
$string = trim($string);
return htmlspecialchars_decode($string,ENT_QUOTES);
}
答案 1 :(得分:0)
谢谢大家。
mysql_escape_string()有效。为了记录,addslashes()正在将撇号变成反叛。问题