刚下载了一个版本DedeCMS-V5.7-UTF8-SP1,安装之后前台页面某些地方有乱码。。。 然后神奇的事情出现了:admin账号输入之后后台竟然进不去,页面一片空白。
经过一番定位,发现userlogin.class.php这个文件有问题。于是把类似如下的@符号去掉之后(
session_unregister($this->keepUserIDTag);
@session_unregister($this->keepUserTypeTag);
@session_unregister($this->keepUserChannelTag);
@session_unregister($this->keepUserNameTag);
@session_unregister($this->keepUserPurviewTag);
)
就发现问题了:
竟然没有定义那个方法!后来有人说:
PHP4.2以上版本不需要用session_register()注册SESSION变量,直接用:
$_SESSION["string"]=“string";
赋值。
还真是这样。。。。
官网上这样表示的:
session_register
(PHP 4, PHP 5 < 5.4.0)
Warning
This function has been DEPRECATED as of PHP 5.3.0 and REMOVED as of PHP 5.4.0.
我用的是php5.4.3,已经移除了!
后来退出方法里面也有那个方法,结果不能退出!!!
Note:
If $_SESSION (or $HTTP_SESSION_VARS for PHP 4.0.6 or less) is used, use unset() to unregister a session variable. Do not unset() $_SESSION itself as this will disable the special function of the $_SESSION superglobal.
然后这样: //session_unregister($this->keepUserIDTag);
//@session_unregister($this->keepUserTypeTag);
//@session_unregister($this->keepUserChannelTag);
//@session_unregister($this->keepUserNameTag);
//@session_unregister($this->keepUserPurviewTag);
unset($this->keepUserIDTag);
unset($this->keepUserTypeTag);
unset($this->keepUserChannelTag);
unset($this->keepUserNameTag);
unset($this->keepUserPurviewTag);
就正常退出了!!!本来想报到官网上,结果注册太麻烦。自己先记下来。。。。