|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
Windows本身的所有问题都会一成不变的也累加到了它的身上。安全性、稳定性、跨平台性都会因为与NT的捆绑而显现出来;web|背景|上传|数据|数据库
概述
本文解说了一个利用办公之星控件完成背景主动上传文件的例子,利用该办法没有选择文件步骤,能够在WEB情况下完成相似单机情况下点击保留文件的效果。
弁言
为了在HTML网页中取得上传功效,在客户端我们可使用以下格局的FORM:
<FORMNAME="myForm"
ACTION="TargetURL.asp"
ENCTYPE="multipart/form-data"
METHOD="post">
<INPUTTYPE="file"NAME="myFile">
<INPUTTYPE="submit"VALUE="UploadFile">
</FORM>
这类计划在客户端和服务器真个利用都有良多限定。起首,我们必需利用POST办法,由于GET办法没法处置如许的表双数据。而且,没有甚么办法能够在不利用表单的情形下激发一个POST举措。把数据发送给表单处置程序后,扫瞄器将会把处置程序作为新页面加载,然后利用者会看到一个不讨人喜好的页面转换历程。
办公之星控件中的上传计划
必要依照以下步骤操纵:
客户端:
将办公之星控件所编纂的文档保留至当地
使用HTTP协定将保留的一时文档发送给Web服务器
服务器端:
从Request工具中读出上传的二进制文档
读出二进制数据而且存储到数据库的BLOB型字段中。
使用办公之星控件能够在WEB情况下完成和WORD功效相称的图文混排和字处置功效,但怎样将所编纂的文档保留至服务器端?上述的计划仿佛没有甚么新器材。依照媒介中的申明,file控件的value值为只读,必定存在选择文档在手动点击上传按钮的历程。是如许吗?先先容二个办公之星控件接口办法:
1.SaveToTempFile(strfilename)
将以后用办公之星控件编纂的文档保留至当地构成一个一时文件,参数filename为一时文件的文件称号。该办法会前往一个参数,这个参数暗示一时文件的相对路径。示例:SaveToTempFile("abc.ost")
2.UpLoadFile(strfilepath,stroperatorfile)
将当地指定文件上传至服务器端,参数filepath为当地待上传文件的相对路径,operatorfile为服务器端用来吸收上传文件流的文件称号。该办法会前往一个参数,提醒操纵过程当中是不是乐成。示例:UpLoadFile("c:abc.ost","http://www.oapro.com/save.asp")
看到这里,信任您已分明了,办公之星控件已供应接口办法,将指定文件主动上传。上面给出客户端完全的代码:
<scriptlanguage="vbscript">
PublicSubmnuFileSave_click()
dimstr,strRet
天生一时文件
str=OStar.SaveToTempFile("abc.ost")
将一时文件上传
strRet=OStar.UpLoadFile(str,"http://www.oapro.com/save.asp")
上传乐成与否提醒
alert(strRet)
EndSub
</script>
上述页面中OStar为办公之星控件在页面中的操纵工具称号。以下代码为服务器端怎样处置上传文件并保留至数据库:
<%
界说变量和工具
dimsql
dimrs
dimUpFile
dimconn
dimconnstr
dimdb
保留上传文件的数据库称号
db="db.mdb"
获得上传的二进制数据
UpFile=Request.BinaryRead(Request.TotalBytes)
创建数据库毗连
Setconn=Server.CreateObject("ADODB.Connection")
connstr="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&Server.MapPath(""&db&"")
conn.Openconnstr
sql="selectUpFilefromOStarRepTemplatewhere(idisnull)"
rs.opensql,conn,1,3
rs.addnew
增加上传的二进制内容进数据库
rs("UpFile").AppendChunkUpFile
rs.update
烧毁数据库毗连工具
rs.close
setrs=nothing
conn.close
setconn=nothing
前往存储信息
Response.Write"Uploadsuccessful!"
%>
以上服务器端代码并未思索是不是第一次保留,假如是的话,那末在数据库中新建一个纪录保留上传的文件,假如不是第一次保留,那末应当是修正之前保留的纪录。
利用该办法的好处
不引发页面转换。
不必要公用组件。
这段程序是纯剧本写成的,能够很简单的拔出到其他代码中,而不必要任何HTML工具的共同。还能够把这个逻辑在任何撑持COM尺度的言语中完成。
</p>asp可以使用微软的activeX使得网页功能无比强大,不过安全性也较差,而且是基于的windows服务器,所以性能稳定性也一般 |
|