php中get,post,cookies,session的反斜杠问题

<pre name="code" class="php">magic_quotes_runtime =on时,php在提取数据(包括从get,post,cookies,session,数据库)时就会自动在' " \前加上转义符"\"而当magic_quotes_runtime =off时就没有该功能,而数据入库前通过addslashes()加的转义符在存入数据库时就被自动过滤掉了,所以如果php.ini中magic_quotes_runtime =off时再用stripslashes()去掉“\”就会无法正确显示原来的数据。
数据放入数据库和取出来显示在页面需要注意什么
//addslashes与stripslashes互应函数
入库时
$str=addslashes($str);
$sql="insert into `tab` (`content`) values('$str')";
出库时
$str=stripslashes($str);
显示时
//nl2br与htmlspecialchars是互应函数
$str=htmlspecialchars(nl2br($str)) ;
要改一下才不至于误导人出库时
$str=stripslashes($str);是否stripslashes要看php.ini中magic_quotes_runtime是否为on



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章