ASP文件上传实现
老 ASP 的文件上传,虽然年代有点久,但要是你现在还在维护老项目,这一套流程其实还挺实用的。上传逻辑主要靠ADODB.Stream
来文件流,思路简单粗暴:表单上传 -> 读取流 -> 写入文件,配合Server.MapPath()
就能搞定文件保存。
前端表单的部分比较基础,用<input type="file">
,记得加上enctype="multipart/form-data"
,不然文件数据根本传不过来。你也可以顺便加点限制,比如只让上传图片、控制文件大小之类的。
后端主要集中在upfile_class.asp
,里面封装好了不少逻辑,比如校验文件类型、重命名、防止覆盖等等。比较关键的一点是:要做好安全性
,尤其是过滤上传的脚本文件,不然被注入就麻烦了。
另外,上传的文件一般都会先存在临时目录,再移动到指定路径。这个时候Server.MapPath()
就派上用场了,路径映射用得顺手,响应也快。
如果你还想让用户看到上传记录、下载链接,files.asp
里可以做个文件列表页。结合数据库,用 ADO 存点元信息,效果还蛮不错。顺带还能加个删除操作,比较贴心。
哦对了,别忘了限制上传格式和大小,不然别人给你传个几百 M 的压缩包,服务器扛不住就凉了。如果你还在用 ASP 上传文件,可以参考下面这些文章,都是干货:
52.19KB
文件大小:
评论区