register_globals=off 网站打不开的解决方法

register_globals是php.ini里的一个配置,这个配置影响到php如何接收传递过来的参数,顾名思义,register_globals的意思就是注册为全局变量,所以当On的时候,传递过来的值会被直接的注册为全局变量直接使用,而Off的时候,我们需要到特定的数组里去得到它。所以,碰到上边那些无法得到值的问题的朋友应该首先检查一下你的register_globals的设置和你获取值的方法是否匹配。(查看可以用phpinfo()函数或者直接查看php.ini)

register_globals=off的目的主要是为安全考虑,同时大多数程序要求将该值设为off,以前用On风格写的大量脚本怎么办? 如果你以前的脚本规划得好,有个公共包含文件,比如config.inc.php一类的文件,在这个文件里加上以下的代码来模拟一下(这个代码不保证100%可以解决你的问题,因为我没有大量测试,但是我觉得效果不错)。

代码:

<?php
if ( !ini_get("register_globals") )
{
    extract($_POST);
    extract($_GET);
    extract($_SERVER);
    extract($_FILES);
    extract($_ENV);
    extract($_COOKIE);
   
    if ( isset($_SESSION) )
    {
        extract($_SESSION);
    }
}
?>




来源:海川互联
阅读:5514
日期:2010-04-02

收藏 】 【 打印 】   
上一篇:VPS主机如何安装mssql2005
下一篇:[原创]Shopex网店使用过程中遇到的问题怎么办?
若文档内容对您没有帮助,不能解决问题? 您还可以 咨询在线客服提交工单,我们将竭诚为您服务。
  >> 相关文章
 
会员 客服 QQ 电话 充值 工单
Top

24小时客服热线:

137 2428 9096