让 emlog 5.3.1 兼容 PHP7 环境一些处理方法分享 教程

直接在 php7 安装 emlog5.3.1 各种报错。emlog5.3.1 虽然已经出了使用 mysqli 连接类,但是为了兼容性还是默认是使用了 mysql。因为 PHP7 已经不支持 mysql 扩展了,但是支持 mysqli 和 pdo_mysql。所以这里还是介绍如何使用 mysqli 来安装 emlog。

以下是修改 emlog 安装程序,无报错安装。如果是实际环境请在本地环境模拟后成功后再更换。

1、修改 include\lib\option.php

const DEFAULT_MYSQLCONN = 'mysql';
改为
const DEFAULT_MYSQLCONN = 'mysqli'; //默认链接方式改为mysqli


2、在 /include/lib/cache.php

$$row['option_name'] = $row['option_value'];
改为
${$row['option_name']} = $row['option_value'];


3、在 admim/seo.php

$$t
改为
${$t}


4、在 admim/views/admin_log.php

$$a
$$b
$$a
改为
${$a}
${$b}
${$a}


5、在 admim/views/comment.php

$$a = "class=\"filter\"";
改为
${$a} = "class=\"filter\"";


另外有些插件和主题是固定了使用mysql连接类,这样还需要修改插件和主题中的数据库连接方式,不然直接报数据库错误。

比如:
$DB = MySql::getInstance();
都要改为
$DB = Database::getInstance();


此教程参考网上很多资料,未做测试,仅供学习参考之用!!!


标签: emlog教程

管理员 发布于  2020-6-8 16:22 

emlog 5.3.1 修改版(PHP7版本) 源码

众所周知,emlog5.3.1不支持php7,emlog6又不喜欢用,php7是大势所趋,星之宇大佬心血来潮做了这个emlog 5.3.1 修改版,主要是针对PHP7的支持做了修改。

更新日志

2018-10-4

修改版1.1

1、Tag缓存改成emlog 6.0.0生成方式,生成首页文章所有的标签缓存

2、修改1.0修改中产生的一些BUG

升级方法

(只适合没几个管理员or注册用户的博客)

1、备份老的网站备份

2、emlog后台数据库备份,“可备份的数据库表”选择除emlog_user表外的所有表,在备份一份SQL

3、上传新的网站安装程序安装

4、导入刚才备份的SQL

5、后台设置时区,保存下并更新缓存

也可以直接替换后台文件,通过修改数据库user密码来实现,以下就是新密码生成函数(使用password_hash,每次生成的密码会不一样,随便填入一个生成的就可以)

<?php
$adminpw = '老密码';
function HashPassword($password) {
    return password_hash(md5($password), PASSWORD_DEFAULT);
}
$adminpw =HashPassword($adminpw);
echo $adminpw;
?>




管理员 发布于  2020-6-8 16:07