帝国备份软件很适合大数据库,搬迁空间使用。作者很久没有更新了,导致用了php7以上版本会报错
方法1:
以下报错,直接关闭错误提示即可。php >=7.3
修改php配置文件php.ini
,把display_errors
设置为off
就可以解决,或者宝塔面板找到安装的php版本,【配置修改】里面关闭也可以。
方法2:
php7.4的版本需要修改代码。
错误内容如下:
Warning: Use of undefined constant Rows – assumed ‘Rows’ (this will throw an Error in a future version of PHP) in /www/wwwroot/www.77nn.net/empirebak/lang/gb/temp/eChangeTable.php on line 275
Warning: Use of undefined constant Data_length – assumed ‘Data_length’ (this will throw an Error in a future version of PHP) in /www/wwwroot/www.77nn.net/empirebak/lang/gb/temp/eChangeTable.php on line 277
Warning: Use of undefined constant Data_length – assumed ‘Data_length’ (this will throw an Error in a future version of PHP) in /www/wwwroot/www.77nn.net/empirebak/lang/gb/temp/eChangeTable.php on line 278
……
大概意思就是,变量***写法不规范,php会在未来的版本中弃用这种写法。
页面会提示出对应的文件以及警告的行。只需要在变量$r[***]
中间添加引号''
。
修改示例:
文件位置:\lang\语言编码\temp\eChangeTable.php
修改前:$r[Field]
修改后$r['Field']
,变量全部都要添加引号,也就是[]
变量中间全部都要改。
上面截图是部分截图。修改完成保存替换源文件即可。
数据库保存警告:
Warning: count(): Parameter must be an array or an object that implements Countable in /www/wwwroot/www.77nn.net/empirebak/class/combakfun.php on line 105
找到对应的文件位置,class/combakfun.php
文件的105
行
把
$count=count($mdbver);
改为
$count=count((array)$mdbver);
备份警告:
Warning: count(): Parameter must be an array or an object that implements Countable in /www/wwwroot/www.77nn.net/backup/class/functions.php on line 462
class/functions.php
文件
把462行的$count=count($tablename);
改为
$count=count((array)$tablename);
文件下载
另,附上修改完成的几个文件,文件夹替换掉原来的目录即可。我用的是默认GB2312和UTF-8编码,所以只修改了gb和gbutf-8语言目录下的文件。
默认账号admin,默认密码123456
暂无评论内容