上传信息技术教学系统中利用asp实现文件上传

asp 文件上传  时间:2021-02-09  阅读:()

信息技术教学系统中利用asp实现文件上传

摘要计算机和因特网的应用和普及其强大的功能已为人们深刻认识校园网络的建成使学校实现了管理网络化和教学手段现代化这对于提高学校的管理水平和教学质量具有十分重要的意义。在我校研发的信息技术教学系统中需要有一项功能可以使学生利用网页提交作业实现作业从本地计算机端传到服务器端。本文重点分析如何利用asp实现文件上传功能。

随着网络技术的不断发展和Internet的日益普及许多学校都建立了校园网络并投入使用这无疑对加快信息处理提高工作效率减轻劳动强度实现资源共享都起到了无法估量的作用。在我校的信息技术教学过程中为了方便教学我校老师研发了信息技术课程教学系统通过该系统学生可以很方便的自主学习、 自主评测同时也减轻了教师的教学负担。

该系统是基于asp开发的。Asp是Active Server Page的缩写意为“动态服务器页面”是微软公司开发的代替CGI脚本程序的一种应用是一种服务器端脚本编写环境可以用来创建和运行动态网页或Web应用程序。

在本系统中有一项功能可以使学生利用网页提交作业实现作业从本地计算机端传到服务器端。现在通用的asp实现文件上传方法主要有两种组件上传法和无组件上传法。

所谓组件上传法是利用编译好的active server组件完成 比如Persits软件公司的AspUpload 将AspUp load.dll放在任意目录中例如c:\然后在windows的“开始――运行”窗口中执行命令“regsvr32 c:\AspUpload.dll”。相应的上传脚本Upload.asp主要代码如下

Set Uplo ad=Server.CreateObject(“Pers its.Upload.1”)

Count=Upload.S ave(“c:\up load”)

这段ASP脚本的第一行创建一个AspUpload对象的实例第二行调用组件的Save方法它实际上的作用是解析从浏览器发送的东西计算出有多少个文件正在上传并且把他们存在服务器上指定的目录。这种方法优点是代码少使用方便。不过有一个很大的弊端如果使用别人的服务器而对方不允许你安装第三方组件这个时候就必须使用无组件上传法。

无组件上传原理也比较简单核心就是分析字符串。不过在实际操作时却很难。其中的关键问题还是对原理的剖析不够深入或是因为过程太繁琐。下面我们来分布说明

一、添加浏览文件的按钮

通常情况下使用HT ML表单form从浏览器向服务器传递数据。这个表单中可能包含文本域、检验框、按钮以及上载文件的文件类型控制。表单元素中的enc typ e属性规定了传递给服务器的表数据集编码的内容类型 当向服务器传送大量文本、包含非ASCII字符或二进制数的数据时应使用“mult ipart/form-data”内容类型。而要浏览上传附件我们一般使用这个元素。

对于我们这个学习系统来讲可以在g 1 index.htm页面中添加代码如下

二、获取上传的文件

后台asp程序中需要获取上传的文件可以使用采用ADO Stream对象的BinaryRead

方法来读取。 BinaryRe ad方法是对当前输入流进行指定字节数的二进制读取结合ADOS tr e am对象的TotalByte s属性可以将所有表单提交的数据全部变成二进制不过这些数据都是经过编码的。部分代码如下

Set m_binForm=Server.CreateObject(“ADODB.Stream”)m_binForm.Open()dom_binForm.Write Request.BinaryRead(lng ChunkByte)lngRe adS iz e=lng ReadS ize+lng Chunk ByteiflngReadS ize>=lngRequestSize then exit doloop

三、保存文件

保存文件可以利用ADO STREAM中提供的二进制文件操作方法来完成保存文件的语句是 StreamOBJ.SaveToFile(fileName,2)。

在具体实现过程中可以将有关的操作存放在一个类文件Up LoadClas s.asp中在应用时直接将该类文件包含在ASP程序中就可以了。

Up load.asp页面部分代码如下:dim saveset save=new UpLoadClasssave.SavePath=“/学生作业/”&left(userid,2)&”/”save.省略中实现文件上传功能比较简单我们可以在页面上使用控件。主要代码如下

FileUpLo ad 1.PostedFile.SaveAs(Server.MapPath(“/Files/”)+FileUp Load 1.FileName);

而在asp中并没有封装好的PostedFile方法所以要自己解决。

参考文献:

[1]ASP编程基础及应用教程2004年

[2]网络程序设计――ASP 第二版 2004年

ParkInHost - 俄罗斯VPS主机 抗投诉 55折,月付2.75欧元起

ParkInHost主机商是首次介绍到的主机商,这个商家是2013年的印度主机商,隶属于印度DiggDigital公司,主营业务有俄罗斯、荷兰、德国等机房的抗投诉虚拟主机、VPS主机和独立服务器。也看到商家的数据中心还有中国香港和美国、法国等,不过香港机房肯定不是直连的。根据曾经对于抗投诉外贸主机的了解,虽然ParkInHost以无视DMCA的抗投诉VPS和抗投诉服务器,但是,我们还是要做好数据备...

云基Yunbase无视CC攻击(最高500G DDoS防御),美国洛杉矶CN2-GIA高防独立服务器,

云基yunbase怎么样?云基成立于2020年,目前主要提供高防海内外独立服务器,欢迎各类追求稳定和高防优质线路的用户。业务可选:洛杉矶CN2-GIA+高防(默认500G高防)、洛杉矶CN2-GIA(默认带50Gbps防御)、香港CN2-GIA高防(双向CN2GIA专线,突发带宽支持,15G-20G DDoS防御,无视CC)。目前,美国洛杉矶CN2-GIA高防独立服务器,8核16G,最高500G ...

2022年腾讯云新春采购季代金券提前领 领取满减优惠券和域名优惠

2022年春节假期陆续结束,根据惯例在春节之后各大云服务商会继续开始一年的促销活动。今年二月中旬会开启新春采购季的活动,我们已经看到腾讯云商家在春节期间已经有预告活动。当时已经看到有抢先优惠促销活动,目前我们企业和个人可以领取腾讯云代金券满减活动,以及企业用户可以领取域名优惠低至.COM域名1元。 直达链接 - 腾讯云新春采购活动抢先看活动时间:2022年1月20日至2022年2月15日我们可以在...

asp 文件上传为你推荐
伪装微信地理位置微信和微信伪装地理位置打不开怎么办?一点就一闪就完了深圳公交车路线深圳公交路线安卓应用平台安卓系统支持的软件并不是那么多,为什么这么多人推崇?唱吧电脑版官方下载唱吧有电脑版吗数据库损坏数据库损坏是怎么回事啊?xp系统停止服务XP系统停止服务后电脑怎么办?淘宝网页显示不正常淘宝网显示不正常安装迅雷看看播放器迅雷看看播放器下了安装不了idc前线怎么知道我电脑是3兆的宽带?分词技术什么是seo分词技术
手机网站空间 虚拟主机评测 上海域名注册 美国域名注册 狗爹 美国主机网 韩国加速器 主机合租 美国十次啦服务器 中国域名 网站加速 北京主机托管 上海联通 windowsserver2012r2 建站论坛 服务器是什么意思 weblogic部署 美国vpn服务器 连连支付 studentmain 更多