动网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编辑过]
|