echo get_magic_quotes_gpc(). " A ".$_POST['message']. " B ".stripslashes($_POST['message']); ?>
输入:include('/home/me/myfile'); 输出:1 A include('/home/me/myfile'); B include('/home/me/myfile'); 总结:get_magic_quotes_gpc()等于1的情况下,如果不输入数据库,那你得到的结果是加了斜线的。 2,提交输入数据库时addslashes的表现。 例子: PHP代码:
require_once('includes/common.php'); $db->query("INSERT INTO `testtable` ( id , content ) VALUES ('1' , '".$_POST['message']."')"); $query=$db->query("select * from `testtable` where `id`= 1;"); $Result=$db->fetch_array($query); echo get_magic_quotes_gpc(). " A ".$_POST['message']. " B ".$Result['content']; ?>
输入:include('/home/me/myfile'); 输出:1 A include('/home/me/myfile'); B include('/home/me/myfile'); 总结:get_magic_quotes_gpc()等于1的情况下,如果输入数据库后,再从数据库直接读取的时候,你不做任何修改就可以得到输入的字符串。 3, get_magic_quotes_gpc() get_magic_quotes_gpc()在服务器是的设置是不能runtime修改的,也就是说,你必须在你的网页代码中预先考虑好不同的情况,不然,当你提交数据的时候,你还不知道服务器给你加了斜线没有。以下两个网上流行的函数可能是大家需要的,个人喜欢第二个: PHP代码: