帝国论坛帝国网站管理系统交流区模板/标签/插件共享交流为升级到帝国cms8.0做些准备 【本版专题贴子】  
 1/3     1 2 3 ›› ›|
主题:为升级到帝国cms8.0做些准备 [加入收藏夹]   

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :3108
经验值   :8921
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 1 楼]
为升级到帝国cms8.0做些准备
当帝国php8发布后,老站的过滤就是大量插件的升迁。升迁成本过高的好,只好继续苟在7.5了。


所以,今天开始做些准备。

力图开发一款插件,方便插件的升级



帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2024-08-29 07:26:27 已设置保密 顶部 回复 引用 报告 编辑 删除

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :3108
经验值   :8921
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 2 楼]

先归类下需要修改的
第一类问题:
最大的工作量,就是数组键名要带单引号
比如

$add[classid]=(int)$add[classid];   

需要修改为

$add['classid']=(int)$add['classid'];

1.  三秒完成:
find /www/wwwroot/75utf8.com/php8/upload -type f -name "*.php" -exec sed -i -r "s/(\\$)([a-zA-Z_]+)\[([a-z_]+)\]/\1\2['\3']/g" {} +



计划用正则全部处理
遍历[(.*?)]  中间的字符串为$a
排除的情况
1.   类似 [!--linkusername--]
2.  已经有引号
3.   以$开头
4.  数字


[该贴被修改 4 次,最后修改时间 2024-09-11 08:31:21 ]


帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2024-08-29 08:18:08 已设置保密 顶部 回复 引用 报告 编辑 删除

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :3108
经验值   :8921
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 3 楼]

在数据库查询语句中,

$cr=$empire->fetch1("select newsclassid,tbname from {$dbtbpre}enewsinfoclass where classid='$add[classid]}'");

需要修改为

$cr=$empire->fetch1("select newsclassid,tbname from {$dbtbpre}enewsinfoclass where classid='{$add['classid']}'");



帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2024-08-29 08:24:19 已设置保密 顶部 回复 引用 报告 编辑 删除

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :3108
经验值   :8921
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 4 楼]

在  '<?php  ...  ?>';   中的 键名问题,只有两处。计划手工修改。



帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2024-08-29 09:03:44 已设置保密 顶部 回复 引用 报告 编辑 删除

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :3108
经验值   :8921
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 5 楼]

在  "<?php  ...  ?>";   中的 键名问题,涉及14个文件。计划手工修改。



帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2024-08-29 09:08:13 已设置保密 顶部 回复 引用 报告 编辑 删除

cighsen02
用户头衔:进士

精华贴   :0
发贴数   :942
经验值   :3593
注册时间:2009-09-29
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 6 楼]

没有法一次解决,可能要多次替换(及特殊函数),可以使用其它语言进行转换,如python,golang(一些字符和文件操作比较强)。

你这么一发,启发了使用代码驱动代码思路。感谢!



要上就上安心站长 www.axzz.cn q:365182575
2024-08-29 09:48:31 已设置保密 顶部 回复 引用 报告 编辑 删除

hibaidu
用户头衔:探花

精华贴   :0
发贴数   :3930
经验值   :11975
注册时间:2010-05-26
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 7 楼]

这是什么




2024-08-30 07:54:50 已设置保密 顶部 回复 引用 报告 编辑 删除

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :3108
经验值   :8921
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 8 楼]

错误摘录

        $tts.="<option value='$ttr['typeid']'".$select.">$ttr['tname']</option>";
$gr=$empire->fetch1("select doall from {$dbtbpre}enewsgroup where groupid='$user_r['groupid']'");

                        $titleurl="ShowInfo.php?classid=$r['classid']&id=$r['id']".$addecmscheck.$ecms_hashur['ehref'];
        $qf="(<font color='red'>$qfr['tstatus']</font>)";






[该贴被修改 1 次,最后修改时间 2024-09-11 08:59:55 ]


帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2024-09-11 08:50:40 已设置保密 顶部 回复 引用 报告 编辑 删除

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :3108
经验值   :8921
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 9 楼]

二级键名需要加引号


if(!$class_r[$classid][classid]||!$class_r[$classid][tbname])


特征是  ][tbname]   可能有点问题,先这么弄

执行代码


find /www/wwwroot/75utf8.com/php8/upload -type f -name "*.php" -exec sed -i -r "s/\]\[([a-z_]+)\]/]['\1']/g" {} +



帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2024-09-11 08:55:31 已设置保密 顶部 回复 引用 报告 编辑 删除

jiaxian520
用户头衔:举人

精华贴   :0
发贴数   :332
经验值   :1174
注册时间:2009-02-04
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 10 楼]

头大,继续苟着了。以后新站再上8




2024-09-12 09:27:50 已设置保密 顶部 回复 引用 报告 编辑 删除
 1/3     1 2 3 ›› ›|

快速回复
内容

表情
使用EBB代码 使用smile代码 显示签名 自动分析url 自动分析img
     【进入高级模式】   (按 Ctrl+Enter 直接提交)
    顶部  加入收藏夹
关于帝国 | 广告服务 | 联系我们 | 法律声明 | 隐私条款 | 许可协议
Powered by: EBB Version 2.2.1