原系统使用的是php4现在因为服务器更新调整为php5,所以需要对原来的代码进行修改。但是现在遇到了一个问题,不清楚是哪里造成的希望得到大家的指点。错误如下:
httpd的log文件 error_log中错误描述为:[Tue Oct 18 03:39:30 2011] [error] [client 116.3.5.116] PHP Notice:  Undefined index: PHPSESSID in /home/sksato/wwwroot/include/common.php on line 18common.php的第18行处代码为:if($_GET[session_name()]){
   header('Location: '.XOOPS_URL.'/');
   exit();
}小弟不清楚 为什么会出 PHP Notice:  Undefined index: PHPSESSID 这个错误,请求指点迷津!

解决方案 »

  1.   

    4-》5需要修改注册session的方式。
      

  2.   

    if(isset($_GET[session_name()]) && $_GET[session_name()]){
      header('Location: '.XOOPS_URL.'/');
      exit();
    }
      

  3.   

    session_name();  //获取或设置当前session的名称。你可以echo一下。看能取到值吗?
      

  4.   

    很明显就是url中没有PHPSESSID变量,不是升不升级的问题
      

  5.   

    直接输出session_name()会得到PHPSESSID这个没有问题。
      

  6.   

    session_name() 无参数返回的是字符串 PHPSESSID
    这种取SESSION方式已经过时了
      

  7.   

    关键在于你的url种没有PHPSESSID这个变量
      

  8.   

    但是,没有办法啊。如果不改变情况下需要怎么改,才可以清除这个错误啊?比如kyzy_yy_pm给的办法if(isset($_GET[session_name()]) && $_GET[session_name()]){
      header('Location: '.XOOPS_URL.'/');
      exit();
    }是否可以达到目的呢?
      

  9.   

    出现 Notice: Undefined ... 错误提示,只是因为你的 php5 的错误处理级别设置的与你的 php4 的不一致
    你把它设置成一致就可以了一般 php4 的环境都设置成这样
    error_reporting = E_ALL & ~E_NOTICE
    你在 php5 中也设置成这样就可以了
      

  10.   

    PHP4升级为PHP5需要改什么代码啊?求解