账号通
    

账号  

密码  

3945

查看

5

回复
主题:[分享]V7.x图片频道绑定二级域名时,生成的图片内容页部分图片不显示的修复 [收藏主题] 转到:  
科汛官方 当前离线

47268

主题

145

广播

405

粉丝
添加关注
级别:管理员

用户积分:101604 分
登录次数:7935 次
注册时间:2006/12/7
最后登录:2023/12/14
科汛官方 发表于:2010/12/6 11:10:47   | 只看该作者 查看该作者主题 楼主 
科汛在线考试系统(NET)

经商业用户反应及官方测试,发现存在此BUG,问题在于图片频道绑定二级域名时,如果上传的图片不是绝对路径时,图片无法显示。





如果您的图片频道没有绑定二级域名,就不用再往下看了。。。。







解决方法如下:



打开ks_cls/kesion.label.commoncls.asp,KesionCMS版本约854行,每个用户这个文件的位置可能不同



以下以图片生成分页方式为例说明修改,





找到

case 2  '图片模型

       Content=Node.SelectSingleNode("@picurls").text

       If IsNull(Content) Then Content = ""

       ContentArr = Split(Content, "|||") : TotalPage  = UBound(ContentArr) + 1

       Dim ShowStyle,PageNum,Tp

       ShowStyle=KS.ChkClng(Node.SelectSingleNode("@showstyle").text) : If ShowStyle=0 Then ShowStyle=1

       PageNum=KS.ChkClng(Node.SelectSingleNode("@pagenum").text) : If PageNum=0 Then PageNum=10

       If (ShowStyle=1 or ShowStyle=2 Or ShowStyle=4) And TotalPage<=1 Then ShowStyle=3

       Select Case ShowStyle

        case 1

            Tp=LFCls.GetConfigFromXML("picturelabel","/labeltemplate/label","style1")

            Dim ThumbList,DefaultImageSrc,DefaultImageIntro,r,Tpage

         For I = 0 To TotalPage - 1

        CurrPage = I + 1

        GetPrevNextUrl TotalPage,CurrPage,ShowUrl,sFname,Fname,FExt,Tid    '得到上一页及下一页URL

        ThumbList=""

        For n=1 To TotalPage

         If N=1 Then

          If CurrPage = N Then

         ThumbList=ThumbList &"<li><a class=""currthumb"" href=""" & ShowUrl & sFname &""" target=""_self""><img src=""" & Split(ContentArr(n-1),"|")(2) &""" border=""0""/></a></li>"

          Else

           ThumbList=ThumbList &"<li><a class=""normalthumb"" href=""" & ShowUrl & sFname &""" target=""_self""><img src=""" & Split(ContentArr(n-1),"|")(2) &""" border=""0""/></a></li>"

          End If

         Else

          If CurrPage = N Then

         ThumbList=ThumbList &"<li><a class=""currthumb"" href=""" & ShowUrl & Fname & "_" & N & FExt &""" target=""_self""><img src=""" & Split(ContentArr(n-1),"|")(2) &""" border=""0""/></a></li>"

          Else

            ThumbList=ThumbList &"<li><a class=""normalthumb"" href=""" & ShowUrl & Fname & "_" & N & FExt &""" target=""_self""><img src=""" & Split(ContentArr(n-1),"|")(2) &""" border=""0""/></a></li>"

          End If

         End If

        Next

        DefaultImageSrc=Split(ContentArr(CurrPage-1), "|")(1)

        DefaultImageIntro=Split(ContentArr(CurrPage-1), "|")(0)

          If CurrPage <> 1 Then FilePathAndName = FilePathAndNameTemp & Fname & "_" & CurrPage & FExt

       F_C = TFileContent

       If InStr(F_C, "{UnTag:GetRelativeList") <> 0 Then F_C = ReplaceLableFlag(Replace(F_C, "{UnTag:GetRelativeList", "{Tag:GetRelativeList"))

       Dim PicSrc :PicSrc=Split(ContentArr(I), "|")(1)

       If (Lcase(Left(PicSrc,4))<>"http") Then PicSrc=KS.Setting(2) & PicSrc

         PageContent=Replace(Tp,"{$PrevUrl}",PrevUrl)

         PageContent=Replace(PageContent,"{$NextUrl}",NextUrl)

         PageContent=Replace(PageContent,"{$CurrPage}",CurrPage)

         PageContent=Replace(PageContent,"{$TotalPage}",TotalPage)

         PageContent=Replace(PageContent,"{$ShowThumbList}",ThumbList)

         PageContent=Replace(PageContent,"{$DefaultImageSrc}",DefaultImageSrc)

         PageContent=Replace(PageContent,"{$DefaultImageIntro}",DefaultImageIntro)

         If TotalPage>1 Then F_C=Replace(F_C,"{$GetPictureName}",GetNodeText("title") & "(" & currpage & ")")

         Templates = "" : Scan F_C

         F_C = Templates

         F_C = ReplaceGeneralLabelContent(F_C)

         F_C = ReplaceRA(F_C, Trim(KS.C_C(Tid,4)))

         Call FSOSaveFile(F_C, FilePathAndName)

       Next



观察上面加颜色的,可以发现,系统默认没有对图片路径进行判断。如果图片地址为:/Uploadfiles/2010-12-7/1.jpg,这种形式,绑定二级域名后就无法显示,因为他的路径会变成  http://二级域名/uploadfiles/2010-12-7/1.jpg



知道原因后就可以开始解决了:



我们在

For n=1 To TotalPage

这句后面增加

Dim ThumbPic:ThumbPic=Split(ContentArr(n-1),"|")(2)

If lcase(Left(ThumbPic,4))<>"http" Then ThumbPic=KS.Setting(2) & ThumbPic



再将红色的Split(ContentArr(n-1),"|")(2) 全部改成 Thumbpic



再将绿色的:DefaultImageSrc=Split(ContentArr(CurrPage-1), "|")(1)

下面增加一个判断

If lcase(left(DefaultImageSrc,4))<>"http" then DefaultImageSrc=KS.Setting(2) & DefaultImageSrc

经过以上修改就可以解决绑定二级域名时,图片不显示了







上面只说了分页方式的处理,如果有用到其它的显示样式,下面还有类似几种显示样式,请自行修改下哦



 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
蝎子 当前离线

149

主题

0

广播

4

粉丝
添加关注
级别:一年级

用户积分:576 分
登录次数:49 次
注册时间:2010/11/1
最后登录:2019/2/25
蝎子 发表于:2010/12/6 12:25:01   | 只看该作者 查看该作者主题 沙发 
科汛在线考试系统(NET)

支持,这个在更新的1201补丁里没有吗?

 
<a href=http://hxxy.edu.cn:81/shangmao>厦门华厦职业学院</a><br> 商贸教学部 - 欢迎交换链接<br>
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
52dingan 当前离线

230

主题

0

广播

0

粉丝
添加关注
级别:二年级

用户积分:135 分
登录次数:48 次
注册时间:2011/4/21
最后登录:2011/7/5
52dingan 发表于:2011/5/12 14:44:57   | 只看该作者 查看该作者主题 藤椅 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
q4948927 当前离线

104

主题

0

广播

0

粉丝
添加关注
级别:一年级

用户积分:119 分
登录次数:26 次
注册时间:2011/3/18
最后登录:2014/6/21
q4948927 发表于:2011/5/13 13:27:12   | 只看该作者 查看该作者主题 板凳 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
yigerenzouxing 当前离线

103

主题

0

广播

0

粉丝
添加关注
级别:一年级

用户积分:82 分
登录次数:3 次
注册时间:2011/5/16
最后登录:2017/12/25
yigerenzouxing 发表于:2011/5/16 15:18:44   | 只看该作者 查看该作者主题 报纸 

新手到处溜达中。。。

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
sffgd 当前离线

618

主题

0

广播

0

粉丝
添加关注
级别:六年级

用户积分:586 分
登录次数:19 次
注册时间:2011/6/22
最后登录:2011/8/30
sffgd 发表于:2011/6/29 10:23:46   | 只看该作者 查看该作者主题 地板 
新手到处溜达中。。。
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
<上一主题 | 下一主题 >
Powered By KesionCMS Version X1
厦门科汛软件有限公司 © 2006-2016 页面执行0.70605秒 powered by KesionCMS 9.0