Magic Quotes是用来过滤表单提交过来不合法的信息处理了,if(get_magic_quotes_gpc()) echo "Magic quotes are enabled";else echo "Magic quotes are disabled";
PHP的-magic quotes
之前到PHP 6日有一个功能叫做magic quotes创建,以协助保护新手程序员写坏表格处理代码。magic quotes将自动躲避危险的表单数据可能被用于SQL注入用反斜杠 。该所字符转义的PHP包括:报价' ,双引号“ ,反斜线和NULL字符。
广告Tizag.com
然而,这个新手保护证明,造成更多的问题比解决的问题,而不是在PHP 6 。如果您的PHP版本的任何版本是6日之前,那么你应该使用这个教训,了解如何magic quotes可能会影响你。
magic quotes-他们使?
第一件事首先,你需要查看如果您有magic quotes使你的服务器。该get_magic_quotes_gpc函数将返回0 (关闭)或1 (上) 。这些布尔值适合成为一个很好的发言,如果其中1是真实的, 0是虚假的。
if(get_magic_quotes_gpc())
echo "Magic quotes are enabled";
else
echo "Magic quotes are disabled";
输出是与你php是否开启
magic quotes在行动
现在可以作出一个简单的形式显示处理器的机器如何与magic quotes将启用那些可能逃脱危险的人物。这种形式提交给自己,所以你只需要作一个文件, “魔法quotes.php ”来测试它。
echo "Altered Text: ".$_POST['question'];
?>
去除反斜线-s tripslashes( )函数
在使用PHP的反斜线清除函数stripslashes它的智能添加一些magic quotes像我们的检查“ ,他们已启用? ”上述区段。这样,您不会不小心被删除斜线认为是合法的,今后如果你的PHP的magic quotes设置变化的未来。
echo "Removed Slashes: ";
// Remove those slashes
if(get_magic_quotes_gpc())
echo stripslashes($_POST['question']);
else
echo $_POST['question'];
?>