PHPCMS V9 更换域名,附件地址无法批更新(更换变便)问题>解决方法!!

本文介绍了一个PHPCMSV9中的bug,该bug导致在使用附件地址替换功能时,部分VARCHAR类型的URL地址无法被正确替换。文章提供了修改建议,以确保所有相关URL都能被替换。
大家应该都有在域名更换(比如说,从本地上传到空间)的情况下,用内容>附件管理>附件地址替换 功能.
基本上替换不了所有表中原来域名的地址.
现PHPCMS V9最新版本的依旧存在些问题.

查找原因发现phpcms\modules\attachment\address.php  update() 中(最新版本LINE35)如下代码存在问题:
if (preg_match('/(char|text|mediumtex)+/i', $val)) {
该句是对所有表中的所有字段类型进行判断.如果是char|text|mediumtex这三种类型的字段,执行相应字段内的内容替换.否则不替换.但表中大多数附件的URL字段类型都是VARCHAR类型.因此大多数的附件URL是不会被替换的.

修正方法:

把该行替换为:if (preg_match('/(char|text|mediumtex|VARCHAR)+/i', $val)) {



问题解决!希望能帮到大家.谢谢!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值