织梦更新时出现报错“读取频道信息失败,无法进行后续操作”的解决方法

浏览1166

dedecms织梦在后台更新时出现报错“读取频道信息失败,无法进行后续操作”的解决方法

1543662268873786.jpg

代码检查报错法:找到您的dedecms的后台的目录里面有一个这样的php文件:mackhtml_archives_action.php,打开这个文件,记住千万不要用记事本打开,用专业的编辑器打开然后找到一下代码(大概在106行):

while($row=$dsql->GetObject('out'))
{
$tjnum++;
$id = $row->id;
$ac = new Archives($id);
$rurl = $ac->MakeHtml($isremote);
}

把这段代码注释掉,换成一下代码:

while($row=$dsql->GetObject('out'))
{
$tjnum++;
$id = $row->id;
echo $id;
echo "";
$ac = new Archives($id);
$rurl = $ac->MakeHtml($isremote);
}

然后再把这个文件上传到原来的问题,这个时候我们就会发现,有报错的信息了,因为我们用这个打印出了,报错的id,在“ 读取频道信息失败,无法进行后续操作!

”提示信息的上面的最后一行数字是就是报错的id,那么这个时候我们就到数据库中找到dede_arctiny的id与之typeid为其他的数字。

这个原因是这个栏目的id删除之后,但是没有同时删除这个栏目下的文章导致的,那么我们把这条数据删除掉即可。

为了更好的解决错误,我们把数据库备份一下,然后运行一下以下sql语句: DELETE FROM 表前缀_arctiny WHERE typeid =错误记录的栏目id。

需要注意的是,表的前缀一定要和您表的前缀一致,错误记录的栏目id就是报错的id对应的typeid。操作这个之前 一定要备份



  • 暂无任何回答