>  기사  >  백엔드 개발  >  字符转义有关问题

字符转义有关问题

WBOY
WBOY원래의
2016-06-13 13:27:321126검색

字符转义问题
比如这样的字符串
[td]For God\'s sake! [/td]
我把单引号转义了,存进数据库。

显示文章的时候,发现文章都带有转义斜杠了。
而不转义直接保存进数据库,有些时候插入数据库会错误。这该怎么办呀?


//转换某些特殊字符
function format_html($str){
$str = str_replace('“', '“',$str);
$str = str_replace('”', '”',$str);
$str = str_replace('·', '·',$str);
$str = str_replace('‘', '‘',$str);
$str = str_replace('’', '’',$str);
$str = str_replace('…', '…', $str);
$str = str_replace('—;', '―', $str);
return $str;
}

另外,php有内置函数的作用能达到我上面那个函数一样的效果吗?因为上面转的也不全完整。

------解决方案--------------------

PHP code
$str = "For God's sake!";
//入库时
...INSERT INTO tb ... col = '".addslashes($str)."'...
//输出时
echo htmlspecialchars($str);
<br><font color="#e78608">------解决方案--------------------</font><br>mysql_real_escape_string
<br><font color="#e78608">------解决方案--------------------</font><br>
探讨

mysql_real_escape_string
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.