找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1338|回复: 0

[分享] dede读取附加信息出错! 解决方法

[复制链接]
发表于 2018-3-22 16:55:22 | 显示全部楼层 |阅读模式 来自 中国–河南–新乡
今天我因为一些需要修改了dede网站数据库的表前缀,并将数据库配置信息文件中表前缀同样改了,然后在编辑发布的文档时出现了"读取附加信息出错!"的消息,同添加文档也同样出错,出现了"把数据保存到数据库附加表 `dede_addonarticle` 时出错,请把相关信息提交给DedeCms官方。"的信息,此时重新生成html文件时原来的文档也不见了。
于是我用代码编辑器搜索了一下"读取附加信息出错!"所在的文件,结果发现这段信息是在admin/article_edit.php中,而它出现的条件是数组$addRow不存在, 即上面sql语句"SELECT * FROM `$addtable` WHERE aid='$aid'"返回结果为0,同过这sql语句可以看出当表名 $addtable 出错时,或文档aid不存在时就会出现问题,而$addtable = $cInfos['addtable'], $cInfos又是通过"SELECT * FROM `dede_channeltype` WHERE id='".$arcRow['channel']."'"得来,我们就可以看出表名$addtable是存在表dede_channeltype中的addtable字段里的(其中dede_是表前缀),而不是用类似于dede_channeltype的表前缀加表名的方式获得的,结果我去数据库的dede_channeltype表中一看,发现里面是内容模型的信息,而里面存的表名的前缀还是原来的,于是我将里面的表名改正,再去后台看,错误就没了。


总结:出现这个错误就是因为数据库表名与dede_channeltype中存的表名对不上,能操作数据库的人可以去数据库修改,不会操作数据库的人可以在核心--频道模型--内容模型管理--将模型‘附加表’改正确即可。


附:我在查看dede_channeltype表时发现字段maintable中也存着表名,能改数据库的人最好把里面的表前缀也改过来,虽然说只要改掉addtable字段就能解决错 了误。
最简单方法是使用系统里的系统错误修复,一般都能解决

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号

关闭

站长推荐上一条 /1 下一条

QQ|侵权投诉|广告报价|手机版|小黑屋|西部数码代理|飘仙建站论坛 ( 豫ICP备2022021143号-1 )

GMT+8, 2025-1-10 20:52 , Processed in 0.047650 second(s), 7 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表