请问如何用Jscript实现文件的上传,不用组件,最好有源代码,急需,非常感谢! jscript没有这个功能啊!!!必须有服务器端的相应代码啊! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你是指服务器端ASP环境下用javaScript吗?纯客户端,是不行的。 <upload.htm> 这是提供给客户端的上传界面<html> <body> <center> <form name="mainForm" enctype="multipart/form-data" action="process.asp" method=post> <input type=file name=mefile ><br> <input type=submit name=ok value="OK"> </form> </center> </body> </html>说明:在form 中必须有enctype="multipart/form-data"的属性,否则,无法实现文件的上传。<process.asp>这是将浏览器传来的数据流进行处理,获得img的数据。<%Option ExplicitDim connGraph,rsTest,strConn,strType,nStart,nEndDim formsize,formdata,bncrif,length,divider,datastart,dataend,mydataResponse.Buffer = True‘对得到的数据进行处理formsize = Request.TotalBytesformdata = Request.BinaryRead(formsize)bncrif = ChrB(13) & ChrB(10)length = clng(instrb(1,formdata,bncrif))-1divider = LeftB(formdata,length)datastart = instrb(formdata,bncrif&bncrif)+4 ‘img的起始位置dataend = instrb(datastart+1,formdata,divider)-datastart ‘img的结束位置mydata = midb(formdata,datastart,dataend) ‘得到img 的数据‘Response.BinaryWrite mydata数据库的连接Set connGraph = server.CreateObject ("ADODB.Connection")strConn = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" &_ Server.MapPath ("FILETEST.mdb")connGraph.Open strConn插入数据库Set rsTest = Server.CreateObject ("ADODB.Recordset")rsTest.Open "select * from FILETEST where id is null",connGraph,1,3rsTest.AddNewrsTest("img").appendchunk mydatarsTest.Update rsTest.Closeset rsTest = nothingset connGraph = nothing%>说明:此处是以名为FILETEST.mdb的数据库为例。字段名称 类型 描述 id 自动编号 主键值 img OLE对象 用来保存图片数据经过处理后的img已输入数据库中,下面要做的是将其显示于页面。<show.asp>这是img 的显示文件,红色语句应加以注意。<%@ Language=VBScript %><!--#include file="ADOVBS.INC"--><HTML><HEAD><META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0"></HEAD><BODY><form action="show.asp" method=post><input type=textbox name=textbox1><input type=submit name =submit></form><center><%if Request.ServerVariables("CONTENT_LENGTH") <>0 then%> <p><img src="showing.asp?id=<%=Request.Form("textbox1")%>"></p><%end if%></center><P> </P></BODY></HTML><showing.asp>这是从数据库中读出img的asp<!--#include file="adovbs.inc"--><% Set conn = Server.CreateObject ("ADODB.Connection")strConn = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" &_ Server.MapPath ("FILETEST.mdb")conn.Open strConnSet rsTest = Server.CreateObject ("ADODB.Recordset")strSql = "select img from FILETEST where id ="& trim(request("id"))rsTest.Open strSql,conn,adOpenKeyset,adLockReadOnly,adCmdTextResponse.ContentType = "image/gif"Response.BinaryWrite rsTest("img").getChunk(7500000)rsTest.CloseSet rsTest = nothing:Set conn = nothing%>说明:对于不同的BLOB需要变化的是Response.ContentType。而且,在页面传入的数据流中可以加以分析得到ContentType,可把它以存入数据库,由它来设定Response.ContentType即可。 补充一点:只用JScript是不可能做到文件上传的. 谷歌地图在混合模式下没有街道显示 增加输入框的问题,在线问 求助 屏蔽右键 求一段随机滚动脚本。急... 有关页面展示的问题,请高手指点,急!!!!!!!!!!!!!!!!!!!!!!! 全部分求:包涵javascript排序的DataGrid控件 本人愚昧,不知道<DIV> </DIV>到底是干什么用的?作用是什么? 一个“简单问题”需要兄弟门帮忙 JavaScript 问题 求大神解答 所有分送上 如何用for循环遍历text控件,控件name是2维数组表示? :昨夜偶遇难题,懵懂不知所措,试问身边人,却道:请去专家门诊!求助,求助,哪位网络高手?
纯客户端,是不行的。
<html>
<body>
<center>
<form name="mainForm" enctype="multipart/form-data" action="process.asp" method=post>
<input type=file name=mefile ><br>
<input type=submit name=ok value="OK">
</form>
</center>
</body>
</html>
说明:在form 中必须有enctype="multipart/form-data"的属性,否则,无法实现文件的上传。
<process.asp>这是将浏览器传来的数据流进行处理,获得img的数据。
<%
Option Explicit
Dim connGraph,rsTest,strConn,strType,nStart,nEnd
Dim formsize,formdata,bncrif,length,divider,datastart,dataend,mydata
Response.Buffer = True
‘对得到的数据进行处理
formsize = Request.TotalBytes
formdata = Request.BinaryRead(formsize)
bncrif = ChrB(13) & ChrB(10)
length = clng(instrb(1,formdata,bncrif))-1
divider = LeftB(formdata,length)
datastart = instrb(formdata,bncrif&bncrif)+4 ‘img的起始位置
dataend = instrb(datastart+1,formdata,divider)-datastart ‘img的结束位置
mydata = midb(formdata,datastart,dataend) ‘得到img 的数据‘Response.BinaryWrite mydata
数据库的连接
Set connGraph = server.CreateObject ("ADODB.Connection")
strConn = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" &_
Server.MapPath ("FILETEST.mdb")
connGraph.Open strConn
插入数据库
Set rsTest = Server.CreateObject ("ADODB.Recordset")
rsTest.Open "select * from FILETEST where id is null",connGraph,1,3
rsTest.AddNew
rsTest("img").appendchunk mydata
rsTest.Update
rsTest.Close
set rsTest = nothing
set connGraph = nothing
%>
说明:此处是以名为FILETEST.mdb的数据库为例。
字段名称 类型 描述
id 自动编号 主键值
img OLE对象 用来保存图片数据
经过处理后的img已输入数据库中,下面要做的是将其显示于页面。
<show.asp>这是img 的显示文件,红色语句应加以注意。<%@ Language=VBScript %>
<!--#include file="ADOVBS.INC"-->
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
</HEAD>
<BODY>
<form action="show.asp" method=post><input type=textbox name=textbox1><input type=submit name =submit></form>
<center>
<%if Request.ServerVariables("CONTENT_LENGTH") <>0 then%>
<p><img src="showing.asp?id=<%=Request.Form("textbox1")%>"></p>
<%end if%>
</center>
<P> </P>
</BODY>
</HTML><showing.asp>这是从数据库中读出img的asp
<!--#include file="adovbs.inc"-->
<% Set conn = Server.CreateObject ("ADODB.Connection")
strConn = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" &_
Server.MapPath ("FILETEST.mdb")
conn.Open strConn
Set rsTest = Server.CreateObject ("ADODB.Recordset")
strSql = "select img from FILETEST where id ="& trim(request("id"))
rsTest.Open strSql,conn,adOpenKeyset,adLockReadOnly,adCmdText
Response.ContentType = "image/gif"Response.BinaryWrite rsTest("img").getChunk(7500000)
rsTest.Close
Set rsTest = nothing:Set conn = nothing%>
说明:对于不同的BLOB需要变化的是Response.ContentType。而且,在页面传入的数据流中可以加以分析得到ContentType,可把它以存入数据库,由它来设定Response.ContentType即可。