使用 化境HTTP上传程序 Version 2.0 的问题

作者&投稿:鄘顺 (若有异议请与网页底部的电邮联系)
化境HTTP上传程序 Version 2.0上传文件问题~

不支持这种格式,将它转换成其他格式

Replace_Text 是一个过滤吧,

估计你黏贴的代码有回车或者什么特殊字符,或者超过文本框字数的限制。
如果里面有html代码的话,就会出问题。

<!--#include file="upload_5xsoft.inc"-->
<%
Set upload = New upload_5xsoft
%>
组件必须先实例化的,否则不能直接调用,也就会出现未定义错误.
文件一upload_5xsoft.inc
<SCRIPT RUNAT=SERVER LANGUAGE=VBSCRIPT>
dim Data_5xsoft

Class upload_5xsoft

dim objForm,objFile,Version

Public function Form(strForm)
strForm=lcase(strForm)
if not objForm.exists(strForm) then
Form=""
else
Form=objForm(strForm)
end if
end function

Public function File(strFile)
strFile=lcase(strFile)
if not objFile.exists(strFile) then
set File=new FileInfo
else
set File=objFile(strFile)
end if
end function

Private Sub Class_Initialize
dim RequestData,sStart,vbCrlf,sInfo,iInfoStart,iInfoEnd,tStream,iStart,theFile
dim iFileSize,sFilePath,sFileType,sFormValue,sFileName
dim iFindStart,iFindEnd
dim iFormStart,iFormEnd,sFormName
Version="化境HTTP上传程序 Version 2.0"
set objForm=Server.CreateObject("Scripting.Dictionary")
set objFile=Server.CreateObject("Scripting.Dictionary")
if Request.TotalBytes<1 then Exit Sub
set tStream = Server.CreateObject("adodb.stream")
set Data_5xsoft = Server.CreateObject("adodb.stream")
Data_5xsoft.Type = 1
Data_5xsoft.Mode =3
Data_5xsoft.Open
Data_5xsoft.Write Request.BinaryRead(Request.TotalBytes)
Data_5xsoft.Position=0
RequestData =Data_5xsoft.Read

iFormStart = 1
iFormEnd = LenB(RequestData)
vbCrlf = chrB(13) & chrB(10)
sStart = MidB(RequestData,1, InStrB(iFormStart,RequestData,vbCrlf)-1)
iStart = LenB (sStart)
iFormStart=iFormStart+iStart+1
while (iFormStart + 10) < iFormEnd
iInfoEnd = InStrB(iFormStart,RequestData,vbCrlf & vbCrlf)+3
tStream.Type = 1
tStream.Mode =3
tStream.Open
Data_5xsoft.Position = iFormStart
Data_5xsoft.CopyTo tStream,iInfoEnd-iFormStart
tStream.Position = 0
tStream.Type = 2
tStream.Charset ="gb2312"
sInfo = tStream.ReadText
tStream.Close
'取得表单项目名称
iFormStart = InStrB(iInfoEnd,RequestData,sStart)
iFindStart = InStr(22,sInfo,"name=""",1)+6
iFindEnd = InStr(iFindStart,sInfo,"""",1)
sFormName = lcase(Mid (sinfo,iFindStart,iFindEnd-iFindStart))
'如果是文件
if InStr (45,sInfo,"filename=""",1) > 0 then
set theFile=new FileInfo
'取得文件名
iFindStart = InStr(iFindEnd,sInfo,"filename=""",1)+10
iFindEnd = InStr(iFindStart,sInfo,"""",1)
sFileName = Mid (sinfo,iFindStart,iFindEnd-iFindStart)
theFile.FileName=getFileName(sFileName)
theFile.FilePath=getFilePath(sFileName)
'取得文件类型
iFindStart = InStr(iFindEnd,sInfo,"Content-Type: ",1)+14
iFindEnd = InStr(iFindStart,sInfo,vbCr)
theFile.FileType =Mid (sinfo,iFindStart,iFindEnd-iFindStart)
theFile.FileStart =iInfoEnd
theFile.FileSize = iFormStart -iInfoEnd -3
theFile.FormName=sFormName
if not objFile.Exists(sFormName) then
objFile.add sFormName,theFile
end if
else
'如果是表单项目
tStream.Type =1
tStream.Mode =3
tStream.Open
Data_5xsoft.Position = iInfoEnd
Data_5xsoft.CopyTo tStream,iFormStart-iInfoEnd-3
tStream.Position = 0
tStream.Type = 2
tStream.Charset ="gb2312"
sFormValue = tStream.ReadText
tStream.Close
if objForm.Exists(sFormName) then
objForm(sFormName)=objForm(sFormName)&", "&sFormValue
else
objForm.Add sFormName,sFormValue
end if
end if
iFormStart=iFormStart+iStart+1
wend
RequestData=""
set tStream =nothing
End Sub

Private Sub Class_Terminate
if Request.TotalBytes>0 then
objForm.RemoveAll
objFile.RemoveAll
set objForm=nothing
set objFile=nothing
Data_5xsoft.Close
set Data_5xsoft =nothing
end if
End Sub

Private function GetFilePath(FullPath)
If FullPath <> "" Then
GetFilePath = left(FullPath,InStrRev(FullPath, "\"))
Else
GetFilePath = ""
End If
End function

Private function GetFileName(FullPath)
If FullPath <> "" Then
GetFileName = mid(FullPath,InStrRev(FullPath, "\")+1)
Else
GetFileName = ""
End If
End function
End Class

Class FileInfo
dim FormName,FileName,FilePath,FileSize,FileType,FileStart
Private Sub Class_Initialize
FileName = ""
FilePath = ""
FileSize = 0
FileStart= 0
FormName = ""
FileType = ""
End Sub

Public function SaveAs(FullPath)
dim dr,ErrorChar,i
SaveAs=true
if trim(fullpath)="" or FileStart=0 or FileName="" or right(fullpath,1)="/" then exit function
set dr=CreateObject("Adodb.Stream")
dr.Mode=3
dr.Type=1
dr.Open
Data_5xsoft.position=FileStart
Data_5xsoft.copyto dr,FileSize
dr.SaveToFile FullPath,2
dr.Close
set dr=nothing
SaveAs=false
end function
End Class
</SCRIPT>
文件二 upload.asp
<form name="form1" method="post" action="upfile.asp" enctype="multipart/form-data" >
照片上传
<input type="file" name="file1" >
<input type="submit" value="提 交">
</form>
文件三 upfile.asp
<!--#include FILE="upload_5xsoft.inc"-->
<link href="MAIN1024.css" rel="stylesheet" type="text/css">
<%
Set upload = New upload_5xsoft
f= Server.MapPath("pic")&"/"
Set file = upload.file("file1")
n = right(file.FileName,4)
s=replace(now(),":","")
s=replace(now(),"-","")
s=replace(now()," ","")
file.SaveAs f&s&n
session("image")=s&n
Response.Write "图片上传成功"
%>


舒城县17896716360: 化境HTTP上传程序 Version 2.0上传文件问题 -
张晓精制: 服务器是自己的吗?在IIS的配置文件里还有个上传文件大小设置,把那里也改了.运行inetmgr 停止IIS admin service服务 用记事本打开Windows\system32\inesrv目录下的metabase.xml 将ASPMaxRequestEntityAllowed的值修改为所需值 然后重启IIS admin service服务 AspMaxRequestEntityAllowed="20480000"

舒城县17896716360: 化境HTTP上传程序
张晓精制: 找到提示里的upload.inc这个文件,看第68行开始的循环语句,已经很明确提示了缺少“wend”语句,修正即可.后面的乱码提示为注释,不要包含在编译语句里面,如果符号错误会被执行.检查下代码吧

舒城县17896716360: 不用表单,不用文件域,如何用asp化境无组件上传类上传指定目录的文件? -
张晓精制: jinchuan2000说的很对,但不是要用这个,这是字节流,不好用,最好是上传和文字提交分开,这样比较好的,有些组件是支持又能读字节流,又能读文字的,比如你说的这个 set upload=new upload_5xsoft ''建立上传对象 a=upload.form("filepath") '明白就这个

舒城县17896716360: 化境ASP无组件上传 v2.0 怎么用?
张晓精制: VB你的系统数据库有点问题.. 没有安装一些支持ASP 和SQL的软件.但是如果你 在网上再下载一份 还是这样的化,, 那就是你机器的软件有问题

舒城县17896716360: 如何使用化境无组件上传系统 -
张晓精制: upload_5xsoft.inc upfile.htmupfile.asp你下载的境无组件上传系统里面会有三个这样的文件,upload_5xsoft.inc里面封装了upload_5xsoft类,后面两个文件是例子,你可以看看里面的例子大概就明白的了,主要是看看upfile.asp这个文件,注意服务器一定要开启Microsoft.XMLHTTP组件否则上传不了的

舒城县17896716360: asp(vbs)里怎么上传文件?
张晓精制: asp上传文件很多人使用无组件上传程序,可以搜索一下“化境ASP无组件上传程序”、“无惧无组件上传程序”、“稻香老农无组件上传程序”等下载来用,一般有使用方法说明,目前化境用得比较多.

舒城县17896716360: 求:简单asp上传下载代码 -
张晓精制: 化境ASP无组件上传 V2.0上传至指定文件夹上传至数据库以上三种需要的话发email给我.先来一个吧upfile.asp----------------------------------------------<%OPTION EXPLICIT%><%Server.ScriptTimeOut=5000%><!--#include FILE="upload_5...

舒城县17896716360: ASP上传图片和显示图片的代码? -
张晓精制: 化境无组件上传类:upload_5xsoft.inc:dim Data_5xsoftClass upload_5xsoft dim objForm,objFile,VersionPublic function Form(strFor...

舒城县17896716360: 用化境上传不了图片,显示的是写入错误,是怎么回事?
张晓精制: 确认了下,是权限的问题.

舒城县17896716360: upload - 5xsoft.inc 这个文件怎么获得,谁能指点一下? -
张晓精制: 复制下面代码保存成upload_5xsoft.inc dim Data_5xsoft Class upload_5xsoft dim objForm,objFile,Version Public function Form(strForm) strForm=lcase(strForm) if not objForm.exists(strForm) then Form="" else Form=objForm(strForm) end if end...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网