【 tulaoshi.com - Web开发 】
                             
                            趁今天有空,修正了一下这个函数,经测试,在本地服务器通过,在空间商服务器也可正常使用,没发现错误。我的卡巴斯基不报毒了。^_^ 
只要修改一下,这个函数是放在哪个网站都适用的。在此只与添加图片为例说明一下调用方法,其它位置方法类似。 
在我本机测试成功,由于现在连不上空间的FTP,所以无办在空间上测试,发现问题请到群中提出。 
一、把下面函数放到Ft_admin_conn.asp的最后 
'================================== 
'=函 数 名:saveimgfile 
'=功 能: 保存远程图片 
'=参数说明:imgfileurl--远程图片地址 
'=修改日期: 2006-4-19 13:20 
'=程序作者:冷风 
'=网 站:http://www.4fnet.com.cn 
'================================== 
function saveimgfile(imgfileurl) 
dim img_type,savepath,imgfiletype,flag,imgbody 
savepath="../FUploadFile/"&year(now())&"-"&month(now()) 
flag=false 
imgfiletype=right(imgfileurl,4)'获取远程图片的格式 
img_type=".gif|.bmp|.jpg|.png"'设置允许保存在本地的图片格式 
typeArr=split(img_type,"|") 
for i=0 to ubound(typeArr)-1 
if imgfiletype=typeArr(i) then 
flag=true 
exit for 
end if 
next 
if flag=false then'如果不是允许保存到本地的图片格式,则只连接远程图片 
saveimgfile=imgfileurl 
else 
set xml_http=server.createobject("microsoft.xmlhttp") 
xml_http.open "get",imgfileurl,false 
xml_http.send 
imgbody=xml_http.responsebody 
set xml_http=nothing 
serverpath=server.mappath(savepath) 
set filefolder=server.createobject("scripting.filesystemobject") 
if filefolder.folderexists(serverpath)=false then 
filefolder.createfolder(serverpath) 
end if 
randomize 
savepath=savepath&"/"&year(now())&month(now())&day(now())&hour(now())&minute(now())&int(10*rnd)&imgfiletype 
set adodbs=server.createobject("adodb.stream") 
adodbs.open 
adodbs.type=1 
adodbs.write imgbody 
adodbs.savetofile(server.mappath(savepath))'保存到本地 
adodbs.seteos 
set adodbs=nothing 
if filefolder.fileexists(server.mappath(savepath))=false then '如果保存成功,即返回远程地址,只作远程连接,避免一些防盗连网站不能保存 
saveimgfile=imgfileurl 
else 
savepath=replace(savepath,"../","") 
saveimgfile=savepath 
end if 
set filefolder=nothing 
end if 
end function 
二、打开admin/admin_pic.asp文件 
1、找到:添加图片过程中的 pic_pic=checksql("缩略图片地址",request.form("pic"),1,100) (大概在第368行)在下面插入代码: 
if left(pic_url,7)="http://" and request.form("save")="true" then 
pic_url=saveimgfile(pic_url) 
pic_pic=pic_url 
end if 
  再找到:input type="submit" name="Submit" value="确定新增" (大概在第481行)插入以下代码: 
   input type="checkbox" name="save" value="true"同时保存远程图片 
2、在编辑图片过程(editpic)中的相同地方添加相应的代码即可。 
ok,完工 
希望大家能举一返回,其它用到图片的地方也是一样的调用方法。 
欢迎光临本站:http://www.4fnet.com.cn