当前位置:首页 > 服务器 > 正文

asp中不用控件实现上传文件到服务器(asp无组件上传)

今天给各位分享asp中不用控件实现上传文件到服务器的知识,其中也会对asp无组件上传进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

在ASP.NET中不用控件html怎么上传文件

js可以判断你有没有选择文件,但是不可能由js负责把文件传到服务器上去,你要弄明白一个原来,js是客户端的代码,是在浏览器里执行的,他不可能把任何东西传递到服务器上去,你要想上传文件,只能通过提交的方式,当然这个提交可以是ajax的方式,但是你的服务器端也必须有一个jsp,asp.php类的服务器程序负责接受并保存文件。

asp代码怎样实现无组件上传?

一、无组件上传的原理

我还是一点一点用一个实例来说明的吧,客户端HTML如下。要浏览上传附件,我们通过input type="file"元素,但是一定要注意必须设置form的enctype属性为"multipart/form-data":

form method="post" action="upload.asp" enctype="multipart/form-data"

label

input type="file" name="file1" /

/label

input type="text" name="filename" value="default filename"/

input type="submit" value="Submit"/

input type="reset" value="Reset"/

/form

在后台asp程序中,以前获取表单提交的ASCII 数据,非常的容易。但是如果需要获取上传的文件,就必须使用Request对象的BinaryRead方法来读取。BinaryRead方法是对当前输入流进行指定字节数的二进制读取,有点需要注意的是,一旦使用BinaryRead 方法后,再也不能使用Request.Form 或 Request.QueryString 集合了。结合Request对象的TotalBytes属性,可以将所有表单提交的数据全部变成二进制,不过这些数据都是经过编码的。首先让我们来看看这些数据是如何编码的,有无什么规律可循,编段代码,在代码中我们将BinaryRead读取的二进制转化为文本,输出出来,在后台的upload.asp中(注意该示例不要上传大文件,否则可能会造成浏览器死掉):

%

Dim biData, PostData

Size = Request.TotalBytes

biData = Request.BinaryRead(Size)

PostData = BinaryToString(biData,Size)

Response.Write "pre" PostData "/pre" '使用pre,原样输出格式

' 借助RecordSet将二进制流转化成文本

Function BinaryToString(biData,Size)

Const adLongVarChar = 201

Set RS = CreateObject("ADODB.Recordset")

RS.Fields.Append "mBinary", adLongVarChar, Size

RS.Open

RS.AddNew

RS("mBinary").AppendChunk(biData)

RS.Update

BinaryToString = RS("mBinary").Value

RS.Close

End Function

%

asp如何自动将客户端文件上传到服务器(不用点击文件上传控件)

不可能做到,如果能做到客户端隐私不就全暴露了吗?

比如你电脑里有个隐私文件在你毫不知情的情况下被上传到服务器上去了,你会怎么想呢?

asp中不用控件实现上传文件到服务器的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于asp无组件上传、asp中不用控件实现上传文件到服务器的信息别忘了在本站进行查找喔。

取消
扫码支持 支付码