介绍
今天就跟大家聊聊有关PHP5.4版本中Dedecms后台登录出现空白如何解决,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
把PHP的版本从5.2.14升到了5.4.15,升级完后Dedecms后台却打开空白,检查了各种权限和文件,都没有问题,找来找去,原来是PHP版本函数的问题,它是用session_register来注册一个会话变量,但是在PHP5.4以上中已经移除了这个功能
<强>解决办法:强>
找到包括/userlogin.class.php,里面有一个keepuser()函数,它是用session_register来注册一个会话变量,但是在PHP5.4中已经移除了这个功能,见官网介绍:
如果使用的该PHP版本肯定会出错的,不过我们可以修改下代码:
把@session_register ($ this→keepUserIDTag);注释掉,然后改为
<强>如果(!收取(_SESSION美元($ this→keepUserIDTag]))
强>一共有六个,全部改为下面这样:
if (!收取(_SESSION美元($ this→keepUserIDTag])),//@session_register ($ this→keepUserIDTag),, , $ _SESSION [$ this→keepUserIDTag],=, $ this→userID,, , if (!收取(_SESSION美元($ this→keepUserTypeTag])),//@session_register ($ this→keepUserTypeTag),, , $ _SESSION [$ this→keepUserTypeTag],=, $ this→userType;, , if (!收取(_SESSION美元($ this→keepUserChannelTag])),//@session_register ($ this→keepUserChannelTag),, , $ _SESSION [$ this→keepUserChannelTag],=, $ this→userChannel;, , if (!收取(_SESSION美元($ this→keepUserNameTag])),//@session_register ($ this→keepUserNameTag),, , $ _SESSION [$ this→keepUserNameTag],=, $ this→用户名,, , if (!收取(_SESSION美元($ this→keepUserPurviewTag])),//@session_register ($ this→keepUserPurviewTag),, , $ _SESSION [$ this→keepUserPurviewTag],=, $ this→userPurview;, , if (!收取(_SESSION美元($ this→keepAdminStyleTag])),//@session_register ($ this→keepAdminStyleTag),, , $ _SESSION [$ this→keepAdminStyleTag],=, adminstyle美元;
重新进入后台登录,就可以正常跳转到管理页面了。
因为对PHP并不熟,网上一般都说是数据/common.inc.php文件编码的问题,把编码要改为无BOM格式文件保存,居然没有说是php5.4版本的问题
<强>另外一种方法:
强>在包括/帮助/util.helper。php末尾加入以下代码
function fix_session_register () {,, function 才能;session_register () {,, ,,,args 美元;=,func_get_args ();,, ,,,foreach (args 美元;as 关键美元){,, ,,,,,$ _SESSION [$ key]=$全局变量($ key),,, ,,,},, ,,}, function 才能session_is_registered(键){,, ,,,return 收取($ _SESSION [$ key]);,, ,,}, function 才能session_unregister(键){,, ,,,设置($ _SESSION [$ key]);,, ,,}, },, if (! function_exists (& # 39; session_register& # 39;)), fix_session_register ();
看完上述内容,你们对PHP5.4版本中Dedecms后台登录出现空白如何解决有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。