• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

DedeCMS后台,页面无显示 ,后台页面空白

php 搞代码 4年前 (2022-01-23) 25次浏览 已收录 0个评论

想试试织梦的产品,下载了DedeCMS V5.7版本,在本地部署后,正确登录后台的情况下页面没有任何输出和显示(错误登录或密码错误时才有显示),也没有报错。进到脚本调试,发现问题出在登录页login.php中以下部分。

login.php

[php]view plaincopy

  1. $cuserLogin = new userLogin($admindir);
  2. if(!empty($userid) && !empty($pwd))
  3. {
  4. $res = $cuserLogin->checkUser($userid,$pwd);
  5. //success
  6. if($res==1)
  7. {
  8. $cuserLogin->keepUser();//此处以下无输出
  9. if(!empty($gotopage))
  10. {
  11. ShowMsg(‘成功登录,正在转向管理管理主页!’,$gotopage);
  12. exit();
  13. }
  14. else
  15. {
  16. ShowMsg(‘成功登录,正在转向管理管理主页!’,“index.php”);
  17. exit();
  18. }
  19. echo “ok”;
  20. }

到封装userLogin类所在的脚本userlogin.class.php中查看(路径./include/),所用的keepUser()方法代码如下:

userlogin.class.php

[php]view plaincopy

  1. function keepUser()
  2. {
  3. if($this->userID != && $this->userType != )
  4. {
  5. global $admincachefile,$adminstyle;
  6. if(empty($adminstyle)) $adminstyle = !本文来源gaodai#ma#com搞*!代#%^码网5
    搞gaodaima代码

    ‘dedecms’;

  7. @session_register($this->keepUserIDTag);
  8. $_SESSION[$this->keepUserIDTag] = $this->userID;
  9. @session_register($this->keepUserTypeTag);
  10. $_SESSION[$this->keepUserTypeTag] = $this->userType;
  11. @session_register($this->keepUserChannelTag);
  12. $_SESSION[$this->keepUserChannelTag] = $this->userChannel;
  13. @session_register($this->keepUserNameTag);
  14. $_SESSION[$this->keepUserNameTag] = $this->userName;
  15. @session_register($this->keepUserPurviewTag);
  16. $_SESSION[$this->keepUserPurviewTag] = $this->userPurview;
  17. @session_register($this->keepAdminStyleTag);
  18. $_SESSION[$this->keepAdminStyleTag] = $adminstyle;
  19. PutCookie(‘DedeUserID’, $this->userID, 3600 * 24, ‘/’);
  20. PutCookie(‘DedeLoginTime’, time(), 3600 * 24, ‘/’);
  21. $this->ReWriteAdminChannel();
  22. return 1;
  23. }
  24. else
  25. {
  26. return -1;
  27. }
  28. }

把@去掉,session_register()报出错误:
Call to undefined function session_register()
证实了问题来源于此。查手册的描述如下:
“版本:(PHP 4, PHP 5 < 5.4.0)"
“本函数已自 PHP 5.3.0 起废弃并将自 PHP 5.4.0 起移除。”

查看手册

session_register()在PHP5.4后来的版本中已经多余,可以省去而直接用$_SESSION[‘abc’] =”” ;

查看Stack Overflow关于此方法的问题。

解决方法:去掉或注释掉所有的session_register(),改用直接存$_SESSION数组。

keepUser()部分

[php]view plaincopy

  1. //session_register($this->keepUserIDTag);
  2. $_SESSION[$this->keepUserIDTag] = $this->userID;
  3. //session_register($this->keepUserTypeTag);
  4. $_SESSION[$this->keepUserTypeTag] = $this->userType;
  5. //session_register($this->keepUserChannelTag);
  6. $_SESSION[$this->keepUserChannelTag] = $this->userChannel;
  7. //session_register($this->keepUserNameTag);
  8. $_SESSION[$this->keepUserNameTag] = $this->userName;
  9. //session_register($this->keepUserPurviewTag);
  10. $_SESSION[$this->keepUserPurviewTag] = $this->userPurview;
  11. //session_register($this->keepAdminStyleTag);
  12. $_SESSION[$this->keepAdminStyleTag] = $adminstyle;

修改后就正常显示了。

我是从织梦主页上下载的”最新”版本,很奇怪难道没有人遇到同样的问题吗。这种问题既然这里能出现,别的部分就无法保证不会有更多这样的隐患存在了。

以上就介绍了DedeCMS后台,页面无显示 ,后台页面空白,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:DedeCMS后台,页面无显示 ,后台页面空白

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址