手机
当前位置:查字典教程网 >编程开发 >ASP教程 >保存远程图片函数修改正版
保存远程图片函数修改正版
摘要:趁今天有空,修正了一下这个函数,经测试,在本地服务器通过,在空间商服务器也可正常使用,没发现错误。我的卡巴斯基不报毒了。^_^只要修改一下,...

趁今天有空,修正了一下这个函数,经测试,在本地服务器通过,在空间商服务器也可正常使用,没发现错误。我的卡巴斯基不报毒了。^_^

只要修改一下,这个函数是放在哪个网站都适用的。在此只与添加图片为例说明一下调用方法,其它位置方法类似。

在我本机测试成功,由于现在连不上空间的FTP,所以无办在空间上测试,发现问题请到群中提出。

一、把下面函数放到Ft_admin_conn.asp的最后

'==================================

'=函数名:saveimgfile

'=功能:保存远程图片

'=参数说明:imgfileurl--远程图片地址

'=修改日期:2006-4-1913:20

'=程序作者:冷风

'=网站:http://www.4fnet.com.cn

'==================================

functionsaveimgfile(imgfileurl)

dimimg_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,"|")

fori=0toubound(typeArr)-1

ifimgfiletype=typeArr(i)then

flag=true

exitfor

endif

next

ifflag=falsethen'如果不是允许保存到本地的图片格式,则只连接远程图片

saveimgfile=imgfileurl

else

setxml_http=server.createobject("microsoft.xmlhttp")

xml_http.open"get",imgfileurl,false

xml_http.send

imgbody=xml_http.responsebody

setxml_http=nothing

serverpath=server.mappath(savepath)

setfilefolder=server.createobject("scripting.filesystemobject")

iffilefolder.folderexists(serverpath)=falsethen

filefolder.createfolder(serverpath)

endif

randomize

savepath=savepath&"/"&year(now())&month(now())&day(now())&hour(now())&minute(now())&int(10*rnd)&imgfiletype

setadodbs=server.createobject("adodb.stream")

adodbs.open

adodbs.type=1

adodbs.writeimgbody

adodbs.savetofile(server.mappath(savepath))'保存到本地

adodbs.seteos

setadodbs=nothing

iffilefolder.fileexists(server.mappath(savepath))=falsethen'如果保存成功,即返回远程地址,只作远程连接,避免一些防盗连网站不能保存

saveimgfile=imgfileurl

else

savepath=replace(savepath,"../","")

saveimgfile=savepath

endif

setfilefolder=nothing

endif

endfunction

二、打开admin/admin_pic.asp文件

1、找到:添加图片过程中的pic_pic=checksql("缩略图片地址",request.form("pic"),1,100)(大概在第368行)在下面插入代码:

ifleft(pic_url,7)="http://"andrequest.form("save")="true"then

pic_url=saveimgfile(pic_url)

pic_pic=pic_url

endif

再找到:<inputtype="submit"name="Submit"value="确定新增">(大概在第481行)插入以下代码:

<inputtype="checkbox"name="save"value="true">同时保存远程图片

2、在编辑图片过程(editpic)中的相同地方添加相应的代码即可。

ok,完工

希望大家能举一返回,其它用到图片的地方也是一样的调用方法。

欢迎光临本站:http://www.4fnet.com.cn

【保存远程图片函数修改正版】相关文章:

使用ASP在IIS创建WEB站点的函数

图片自动保存到本地并利用aspjpeg为图片加水印

XMLHTTP抓取远程数据的后期处理

Jmail组件发送邮件之绝对能用的函数

ASP常用函数:Trace()

ASP远程保存图片

几例在ASP存储过程的使用方法

ASP 非法字符过滤函数

sql 存储过程分页

ASP中字符与数字操作函数总结

精品推荐
分类导航