肝胆相照论坛

 

 

肝胆相照论坛 论坛 电脑技术 存档 1 动网7.1sp1无法显示uploadimages的图片的问题 ...
查看: 1135|回复: 3

动网7.1sp1无法显示uploadimages的图片的问题 [复制链接]

Rank: 9Rank: 9Rank: 9

现金
8980 元 
精华
18 
帖子
3101 
注册时间
2004-4-22 
最后登录
2013-7-4 

荣誉之星 电脑大牛

1
发表于 2006-1-15 09:58

动网7.0 以前版本,上传的文件默认是放在uploadimages里的,7.1放在uploadfile里。

升级后,7.0上传的图片显示为"点击查看文件",不再直接显示出来。

可通过修改inc/dv_ubbcode.asp来实现。

对上传图片的代码[ upload=jpg]xxx.jpg[/upload]的处理函数是Dv_UbbCode_U(strText,PostUserGroup,Flag)

在这个函数里可以看到有一行正则匹配

re.Pattern="\[ upload=(gif|jpg|jpeg|bmp|png)\]UploadFile/([^\x01\n]*)\x01\/UPLOAD\]"

它匹配的是"[ upload=jpg]uploadfile/xxx.jpg[/upload]"等格式的内容,符合此格式的图片才会在页面自动显示出来。原来的图片地址是uploadimages/xxx.jpg,自然无法匹配这个检验。

改成

re.Pattern="\[upload=(gif|jpg|jpeg|bmp|png)\]([^\x01\n]*)\x01\/UPLOAD\]"

re.Pattern="\[upload=(gif|jpg|jpeg|bmp|png)\][uploadfile/|uploadimages/]([^\x01\n]*)\x01\/UPLOAD\]"

这样,对新旧图片就均可以匹配了。注意号要修改相关代码。完整的修改和说明如下:

原代码:

Private Function Dv_UbbCode_U(strText,PostUserGroup,Flag)
re.Pattern="\[upload=(gif|jpg|jpeg|bmp|png)\]UploadFile/([^\x01\n]*)\x01\/UPLOAD\]"  '此行要修改
  If Dvbbs.Forum_Setting(75)="0" Then
   If Flag = 1 or PostUserGroup<4 Then
   '以下的Dvbbs.Forum_Setting(76)要去掉,因为Dvbbs.Forum_Setting(76)="uploadfile"
    s= re.Replace(s,"<br><img src=""skins/default/filetype/$1.gif"" border=0 >此主题相关图片如下:<br><a href="""&Dvbbs.Forum_Setting(76)&"$2"" target=_blank id=""ImgSpan""><img src="""&Dvbbs.Forum_Setting(76)&"$2"" border=0 alt=按此在新窗口浏览图片 ></a>")
   Else
    s= re.Replace(s,"<br><img src=""skins/default/filetype/$1.gif"" border=0 ><a href="""&Dvbbs.Forum_Setting(76)&"$2"" target=_blank>"&Dvbbs.Forum_Setting(76)&"$2</a>")
   End If
  Else
    


改为

  re.Pattern="\[upload=(gif|jpg|jpeg|bmp|png)\]([^\x01\n]*)\x01\/UPLOAD\]"  '此行去掉了uploadfile/的匹配
  If Dvbbs.Forum_Setting(75)="0" Then
   If Flag = 1 or PostUserGroup<4 Then
   '以下两行将Dvbbs.Forum_Setting(76)去掉了
    s= re.Replace(s,"<br><img src=""skins/default/filetype/$1.gif"" border=0 >此主题相关图片如下:<br><a href=$2 target=_blank id=""ImgSpan""><img src="""&""&"$2"" border=0 alt=按此在新窗口浏览图片 ></a>")
   Else
    s= re.Replace(s,"<br><img src=""skins/default/filetype/$1.gif"" border=0 ><a href=$2 target=_blank>"&""&"$2</a>")
   End If
  Else
                        '下面要把修改后语句包含的uploadfile和uploadimage去掉,与原程序兼容。
                        s=re.replace(s,"uploadfile/","")
                        s=re.replace(s,"uploadimages/","")

[此贴子已经被作者于2006-1-14 20:17:03编辑过]

蓦然回首 ----------

Rank: 2

现金
214 元 
精华
帖子
4 
注册时间
2006-1-17 
最后登录
2006-1-22 
2
发表于 2006-1-17 05:54
此论坛没打10.27的补丁,我注册后却要重新登录。

Rank: 9Rank: 9Rank: 9

现金
8980 元 
精华
18 
帖子
3101 
注册时间
2004-4-22 
最后登录
2013-7-4 

荣誉之星 电脑大牛

3
发表于 2006-1-17 13:17
阿点没看到 动网官方论坛为了防广告也是费尽心机么 竟然加入时区选择来验证。
蓦然回首 ----------

Rank: 2

现金
214 元 
精华
帖子
4 
注册时间
2006-1-17 
最后登录
2006-1-22 
4
发表于 2006-1-18 04:34
防群发软件恶意注册现在已不是很难了,可在注册项加一随机问题。注册后重新登录可不是为了防那个吧,是版本的一个错误。
‹ 上一主题|下一主题

肝胆相照论坛

GMT+8, 2024-11-27 18:39 , Processed in 0.014413 second(s), 11 queries , Gzip On.

Powered by Discuz! X1.5

© 2001-2010 Comsenz Inc.