内容字号:默认大号超大号

段落设置:段首缩进取消段首缩进

字体设置:切换到微软雅黑切换到宋体

dedecms在php7下的使用方法 织梦dedecsm后台一片空白的解决方法

2017-12-27 14:16 出处:清屏网 人气: 评论(0

前几天,

一个老客户,

最近升级了服务器,

php到php7,

把织梦dedecms转移到新服务器后,

不能登录后台,

让帮忙看一下。

我看了下他们的网站,

使用的是织梦V57_UTF8_SP1

前台页面是可以访问的,

是因为他们的dedecms生成了html静态页面。

但是输入织梦后台登录网址,

出现一片空白,

什么都没有。

织梦dedecms后台

主要原因是dedecms是很多年以前开发的,

都是基本php4,5时代的特性,

现在的php7跟以前的版本相比,

性能提升了很多,

但是很多代码也进行了修改,

导致不兼容以前的部分php代码。

猛击这里

了解《 升级安装php7要考虑的3个方面

下面讲一下怎么解决这个升级php7的一系列问题。

以下操作的目录和文件,

都是相对你安装dedecms的目录

一、 打开错误信息

一片空白是无法调试的,

所以要做的第一件事,

能够输出错误信息。

打开 include/common.inc.php

找到下面的代码

//error_reporting(E_ALL);

error_reporting(E_ALL || ~E_NOTICE);

改为

error_reporting(E_ALL);

//error_reporting(E_ALL || ~E_NOTICE);

主要作用是打开错误提示。

php错误提示

这样再刷新后台,

就会有错误提示了。

解决了织梦后台空白问题后,

你再改过来就行。

二、 ‘continue’ not in the ‘loop’ or ‘switch’ context错误

你刷新后可能遇到这个错误

Fatal error: ‘continue’ not in the ‘loop’ or ‘switch’ context in ….include/common.func.php on line 49

上面表示include/common.func.php 这个文件的49行有错误,

把 continue; 删除

改为 return;

即可

织梦最新版本helper_function代码

最新版的织梦DedeCMS-V5.7-UTF8-SP2已经把这个错误修改过来。

三、 函数mysql_query()未定义

mysql_*的系列函数在php7中不能再使用,

会出现下面的错误

Fatal error: Uncaught Error: Call to undefined function mysql_query() in ….include/dedesql.class.php:152

php7中需要使用mysqli或者pdo的方式,

跟数据库通信,

更安全更高效。

解决的方法

打开文件 data/config.cache.inc.php

$cfg_mysql_type = ‘mysql’;

改为

$cfg_mysql_type = ‘mysqli’;

最新版的织梦DedeCMS-V5.7-UTF8-SP2也是这样设置的。

织梦最新版本mysql_type类型

通过上面三步,

旧的dedecms就能在php7上使用,

可以正常登录后台了。

四、 升级到最新的DedeCMS-V5.7-UTF8-SP2

看了下这个版本的织梦源代码,

应该是支持php7的,

你也可以把织梦升级到最新的版本,

前面3步就可以省略了。

分享给小伙伴们:
本文标签: dedecmsphp7

相关文章

发表评论愿您的每句评论,都能给大家的生活添色彩,带来共鸣,带来思索,带来快乐。

CopyRight © 2015-2016 QingPingShan.com , All Rights Reserved.