dedecms系统常见报错问题合集

在使用dedecms做网站常常会遇到一些棘手的问题
比如:页面图片不显示(src 的地址不对)等等。
1、更新网站时错误
问题:Call to a member function GetInnerText() on a non-object(在一个非对象类型上调用成员函数 GetInnerText())。
原因:出现这个问题,是因为自定义了内容模型,这个内容模型里有图片字段。当我们去生成网站时,更新网站就会提示此错误。
解决:
打开 \include\taglib\channel\img.lib.php 文件
找到

$innerTmp = $arcTag->GetInnerText();

改成

$innerTmp = ($arcTag=="") ? trim($arcTag) : trim($arcTag->GetInnerText());

2、网页中图片不显示
问题:图片 src 地址显示不对,如:{dede:img text=\‘\‘ width=\‘270\‘ height=\‘129\‘} /uploads/161130/1-161130110AW61.jpg{/dede:img} 。
当将地址换成 网址+ /uploads/161130/1-161130110AW61.jpg 时,能显示之前上传的图片。
原因:出现这个问题,是因为自定义了内容模型,这个内容模型里有图片字段。并且用的是图片,并非图片(仅网址)。
解决:
打开 \include\extend.func.php 文件。
这个文件就是系统预留的自定义函数接口文件,主要用于二次开发用的。在该文件最后加上如下代码:

function GetOneImgUrl($img,$ftype=1){  
    if($img <> ''){  
        $dtp = new DedeTagParse();  
        $dtp->LoadSource($img);  
        if(is_array($dtp->CTags)){  
            foreach($dtp->CTags as $ctag){  
                if($ctag->GetName()=='img'){  
                    $width = $ctag->GetAtt('width');  
                    $height = $ctag->GetAtt('height');  
                    $imgurl = trim($ctag->GetInnerText());  
                    $img = '';  
                    if($imgurl != ''){  
                        if($ftype==1){  
                            $img .= $imgurl;  
                        }  
                        else{  
                            $img .= '<img src="'.$imgurl.'" width="'.$width.'" height="'.$height.'" />';  
                        }  
                    }  
                 
                }  
            }  
        }  
    $dtp->Clear();  
    return $img;  
    }  
}

然后是调用该图片的代码也要改变:
列表页和首页调用方法:

[field:bigpic function='GetOneImgUrl(@me,0)'/]  //调用图片的信息,自动调用宽度和高度(已包含Html代码的<img />)
[field:bigpic function='GetOneImgUrl(@me,1)'/]  //只调用图片地址,一般可用于背景图嵌套

内容页调用方法:

{dede:field name='bigpic' function='GetOneImgUrl(@me,1)'/}

对应的,在添加图片的字段时,选择仅网址.
3、增加用户时,提示用户名已存在
问题:在用户组里,删除用户后,重新添加时,提示用户名已经存在。


原因:当添加用户后,在会员中心中可以看到,该用户也被添加进会员列表了。


解决:删除添加的用户后,同时也要删除会员中心得注册会员列表里的该会员。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值