VIP福利
主页 > 建站问题 > 故障问题 > 织梦dedecms数据库更新附加表 `dede_addonarticle` 时出错的解决方法

织梦dedecms数据库更新附加表 `dede_addonarticle` 时出错的解决方法

网站发布不了文章,提示更新附加表 `dede_addon17` 时出错,请检查原因!搜索了原因,发现很多人出现 这个问题,现在将修复方法公布如下: 系统可能是dede5.6,dede5.7,dede v5.7sp1等 出现问题一般为 1、发布文章时出现 把数据保存到数据库附加表 `dede_addonarticle` 时出错,请把相关信息提交给dedecms官方; 2、上传图片是出现 把数据保存到数据库附加表dede_addonimages时出错,请把相关信息提交给dedecms官方 3、第三方模型发布出 […]



网站发布不了文章,提示更新附加表 `dede_addon17` 时出错,请检查原因!搜索了原因,发现很多人出现 这个问题,现在将修复方法公布如下: 

系统可能是dede5.6,dede5.7,dede v5.7sp1等 

出现问题一般为 

1、发布文章时出现 把数据保存到数据库附加表 `dede_addonarticle` 时出错,请把相关信息提交给dedecms官方; 

2、上传图片是出现  把数据保存到数据库附加表'dede_addonimages'时出错,请把相关信息提交给dedecms官方 

3、第三方模型发布出现 更新附加表 `dede_addon17` 时出错,请检查原因! 

原因是在dede_addonimages、addonimages 、dede_addon17等对应的里少了一个名为(body)的字段。 

解决方法: 

执行下面的SQL创建这个字段就不出现那个错误了: 

方法为 点击后台系统-SQL命令行工具-运行SQL命令行:运行对应的SQL语句就行 
1、 ALTER TABLE `dede_addonarticle` ADD `body` mediumtext 

2、 ALTER TABLE `dede_addonimages` ADD `body` mediumtext 

3、ALTER TABLE `dede_addon17` ADD `body` mediumtext 

一定要找到对应的字段然后添加


问题二、最近在给商品型加入图集功能时,发布信息提示you have an errovr in sql syntax; VALUES(X,X,X,X) {dede:img text="" width="h" at line 2

解决方法:

英文提示是说数据库的语法有问题,由对用户的数据库比较以为是数据库版本问题,但是默认的图集是可以了,后来找很多朋友看。朋友告诉我是语法错了。查了很久也没有找到原因。

由于自己的粗心在加入代码时少了一个)号,导致出错。


//保存到附加表
    $cts = $dsql->GetOne("SELECT addtable FROM `58pic_channeltype` WHERE id='$channelid' ");
    $addtable = trim($cts['addtable']);
    if(!empty($addtable))
    {
        $useip = GetIP();
        $query = "INSERT INTO `{$addtable}`(aid,typeid,redirecturl,userip,pagestyle,maxwidth,imgurls,row,col,isrm,ddmaxwidth,pagepicnum,body{$inadd_f})
Values('$arcID','$typeid','$redirecturl','$useip','$pagestyle','$maxwidth','$imgurls','$row','$col','$isrm','$ddmaxwidth','$pagepicnum','$body'{$inadd_v})";
        if(!$dsql->ExecuteNoneQuery($query))
        {
            $gerr = $dsql->GetError();
            $dsql->ExecuteNoneQuery("DELETE FROM `58pic_archives` WHERE id='$arcID'");
            $dsql->ExecuteNoneQuery("DELETE FROM `58pic_arctiny` WHERE id='$arcID'");
            ShowMsg("把数据保存到数据库附加表 `{$addtable}` 时出错,请把相关信息提交给DedeCms官方。".str_replace('"','',$gerr),"javascript:;");
            exit();
        }
    }

这一行最后少了一个,)
 
$query = "INSERT INTO `{$addtable}`(aid,typeid,redirecturl,userip,pagestyle,maxwidth,imgurls,row,col,isrm,ddmaxwidth,pagepicnum,body{$inadd_f}

正确的应该是

$query = "INSERT INTO `{$addtable}`(aid,typeid,redirecturl,userip,pagestyle,maxwidth,imgurls,row,col,isrm,ddmaxwidth,pagepicnum,body{$inadd_f})









共有 条评论