Visual_Basic 板


LINE

我要做专题 有一小部分要上传图片的 请大家帮忙看一下 程式那里有问题 可以上传成功 可是图片不会出现 还是 如果谁有的 就请寄给我 [email protected] 因为很急 有谁是 ASP很强的 可以帮我吗? 如果觉得这样子很乱 就留一下信箱 我再把整个程式 寄过去 谢谢拜托了 档名 upload_5xsoft.asp 程式 <SCRIPT RUNAT=SERVER LANGUAGE=VBSCRIPT> dim upfile_5xSoft_Stream Class upload_5xSoft dim Form,File,Version Private Sub Class_Initialize dim iStart,iFileNameStart,iFileNameEnd,iEnd,vbEnter,iFormStart,iFormEnd,theFile dim strDiv,mFormName,mFormValue,mFileName,mFileSize,mFilePath,iDivLen,mStr Version="WLONG3D专用上传程序 Version 1.0" if Request.TotalBytes < 1 then Exit Sub set Form=CreateObject("Scripting.Dictionary") set File=CreateObject("Scripting.Dictionary") set upfile_5xSoft_Stream=CreateObject("Adodb.Stream") upfile_5xSoft_Stream.mode=3 upfile_5xSoft_Stream.type=1 upfile_5xSoft_Stream.open upfile_5xSoft_Stream.write Request.BinaryRead(Request.TotalBytes) vbEnter = Chr(13) & Chr(10) iDivLen = inString(1,vbEnter) + 1 strDiv = subString(1,iDivLen) iFormStart = iDivLen iFormEnd = inString(iformStart,strDiv) - 1 while iFormStart < iFormEnd iStart = inString(iFormStart,"name=""") iEnd = inString(iStart+6,"""") mFormName = subString(iStart+6,iEnd-iStart-6) iFileNameStart = inString(iEnd+1,"filename=""") if iFileNameStart>0 and iFileNameStart<iFormEnd then iFileNameEnd=inString(iFileNameStart+10,"""") mFileName = subString(iFileNameStart+10,iFileNameEnd-iFileNameStart-10) iStart=inString(iFileNameEnd+1,vbEnter&vbEnter) iEnd=inString(iStart+4,vbEnter&strDiv) if iEnd > iStart then mFileSize=iEnd-iStart-4 else mFileSize = 0 end if set theFile = new FileInfo theFile.FileName = getFileName(mFileName) theFile.FilePath = getFilePath(mFileName) theFile.FileSize = mFileSize theFile.FileStart = iStart+4 theFile.FormName = FormName file.add mFormName,theFile else iStart = inString(iEnd+1,vbEnter&vbEnter) iEnd = inString(iStart+4,vbEnter&strDiv) if iEnd > iStart then mFormValue=subString(iStart+4,iEnd-iStart-4) else mFormValue = "" end if form.Add mFormName,mFormValue end if iFormStart = iformEnd+iDivLen iFormEnd = inString(iformStart,strDiv) - 1 wend End Sub Private Function subString(theStart,theLen) dim i,c,stemp upfile_5xSoft_Stream.Position=theStart - 1 stemp = "" for i=1 to theLen if upfile_5xSoft_Stream.EOS then Exit for c = ascB(upfile_5xSoft_Stream.Read(1)) If c > 127 Then if upfile_5xSoft_Stream.EOS then Exit for stemp = stemp&Chr(AscW(ChrB(AscB(upfile_5xSoft_Stream.Read(1)))&ChrB(c))) i = i + 1 else stemp=stemp&Chr(c) End If Next subString = stemp End function Private Function inString(theStart,varStr) dim i,j,bt,theLen,str InString = 0 Str = toByte(varStr) theLen = LenB(Str) for i = theStart to upfile_5xSoft_Stream.Size - theLen if i > upfile_5xSoft_Stream.size then exit Function upfile_5xSoft_Stream.Position = i - 1 if AscB(upfile_5xSoft_Stream.Read(1)) = AscB(midB(Str,1)) then InString = i for j = 2 to theLen if upfile_5xSoft_Stream.EOS then inString = 0 Exit for end if if AscB(upfile_5xSoft_Stream.Read(1))<>AscB(MidB(Str,j,1)) then InString=0 Exit For end if next if InString <> 0 then Exit Function end if next End Function Private Sub Class_Terminate form.RemoveAll file.RemoveAll set form = nothing set file = nothing upfile_5xSoft_Stream.close set upfile_5xSoft_Stream = nothing 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 Private function toByte(Str) dim i,iCode,c,iLow,iHigh toByte = "" For i = 1 To Len(Str) c = mid(Str,i,1) iCode = Asc(c) If iCode < 0 Then iCode = iCode + 65535 If iCode > 255 Then iLow = Left(Hex(Asc(c)),2) iHigh = Right(Hex(Asc(c)),2) toByte = toByte & chrB("&H"&iLow) & chrB("&H"&iHigh) Else toByte = toByte & chrB(AscB(c)) End If Next End function End Class Class FileInfo dim FormName,FileName,FilePath,FileSize,FileStart Private Sub Class_Initialize FileName = "" FilePath = "" FileSize = 0 FileStart= 0 FormName = "" End Sub Public function SaveAs(FullPath) dim dr,ErrorChar,i SaveAs = 1 if trim(fullpath) = "" or FileSize = 0 or FileStart = 0 or FileName = "" then exit function if FileStart = 0 or right(fullpath,1) = "/" then exit function set dr = CreateObject("Adodb.Stream") dr.Mode = 3 dr.Type = 1 dr.Open upfile_5xSoft_Stream.position = FileStart - 1 upfile_5xSoft_Stream.copyto dr,FileSize dr.SaveToFile FullPath,2 dr.Close set dr = nothing SaveAs = 0 end function End Class </SCRIPT> 档名upfile 程式: <!--#include FILE="upload_5xsoft.inc"--> <% UpFilePath = "file/" '设定存放的目录 if right(UpFilePath,1) <> "/" then UpFilePath = UpFilePath & "/" '在目录後加(\) UpFilePath = Server.MapPath(UpFilePath) '抓出完整主机路径 Set fds = Server.CreateObject("Scripting.FileSystemObject") '建立引用至FileSystemObject物件的fsObj物件变数 '利用FileSystemObject物件的FileExists方法检查目录是否存在(若发生错误,表示该主机不开放建立档案写入权限) if Not fds.FolderExists(UpFilePath) then fds.CreateFolder(UpFilePath) '建立目录指令 set fds = nothing '清除fsObj物件 FileMaxSize = 500000000 '设定档案允许的大小 Server.ScriptTimeOut = 10000 '设定档案传输时间 FileType = ".jpg.gif.htm" '设定允许的副档名 set upload = new upload_5xsoft ''建立上传对象 dim formName,StrFile for each formName in upload.file ''列出所有上传的档案 set file = upload.file(formName) ''生成一个档案对象 if file.FileSize > 0 then ''如果 FileSize > 0 说明有档案byte数 if file.FileSize < FileMaxSize then ''如果未超过档案大小限制 if FileType <> "" then '有限制上传档案类型 if Instr(FileType,GetExtendName(file.FileName)) then TypeFlag = 1 '档案为允许的类型 else TypeFlag = 0 '档案为不允许的类型 'session("txt") = "不支援您所上传的档案类型﹕" 'session("file") = session("file") & GetExtendName(file.FileName) end if else TypeFlag = 1 '没有限制上传档案类型 end if if TypeFlag = 1 then fname = file.FileName file.SaveAs UpFilePath & "\" & fname ''储存档案 StrFile = StrFile & " " & fname end if else 'session("txt") = "档案大小超出限制,您最多可以上传 " & FileMaxSize & "byte的档案" exit for end if end if set file = nothing next set upload = nothing ''删除此对象 '此函数抓取副档名 function GetExtendName(FileName) dim ExtName ExtName = LCase(FileName) ExtName = right(ExtName,3) ExtName = right(ExtName,3-Instr(ExtName,".")) GetExtendName = ExtName end function if fname <> Empty then %> <center><%=StrFile%> 上传完毕</center> <% else %> <script>alert('上传图片失败,目前只允许使用<%=FileType%>档案')</script> <% end if %> <p align="center"><a href="upfile.htm">返回上传页</a></p> 档名:upfile.htm 程式: <script> function op() { txt1 = document.text1.file1.value if( txt1 != "") { var dd = window.open("","new","width=500,height=500"); dd.document.write("<center>预览结果<hr color=#00bbff width=80%><img src=\"" + txt1 + "\"></center>"); dd.document.close(); } } </script> <center> <p> </p> <form method="post" action="upfile.asp" name="text1" enctype="multipart/form-data" > <table border="1" bordercolor="#7B68EE" id="AutoNumber1" cellpadding="0" width="506" height="116"> <tr> <td bordercolor="#FFFFFF" width="498" height="1" colspan="2" style="border: 1pt solid #000000" align="center" bgcolor="#CCCCCC"> <b>简 易 上 传 测 试</b></td> </tr> <tr> <td bordercolor="#FFFFFF" width="78" height="32" style="border: 1pt solid #7B68EE"> <p align="center"><span lang="zh-tw"><a href="javascript:op()" style="color: #7B68EE"><font size="2">预览</font></a></span> </td> <td bordercolor="#FFFFFF" width="416" height="32" align="center"> <span lang="zh-tw"> <font size="2" color="#7B68EE">上传图片 </font></span><input type="file" name="file1" size="20" style="color: #4B0082; font-size: 10 pt; border: 1px solid #4B0082"> <input type="submit" value="传送" name="B1" style="font-size: 10 pt; color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8"> <input type="reset" value="重设" name="B2" style="color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8"> </td> </tr> <tr> <td bordercolor="#FFFFFF" width="78" height="32" style="border: 1pt solid #7B68EE"> <p align="center"><span lang="zh-tw"><a href="javascript:op()" style="color: #7B68EE"><font size="2">预览</font></a></span> </td> <td bordercolor="#FFFFFF" width="416" height="32" align="center"> <span lang="zh-tw"> <font size="2" color="#7B68EE">上传图片 </font></span><input type="file" name="file2" size="20" style="color: #4B0082; font-size: 10 pt; border: 1px solid #4B0082"> <input type="submit" value="传送" name="B1" style="font-size: 10 pt; color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8"> <input type="reset" value="重设" name="B2" style="color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8"> </td> </tr> <tr> <td bordercolor="#FFFFFF" width="78" height="32" style="border: 1pt solid #7B68EE"> <p align="center"><span lang="zh-tw"><a href="javascript:op()" style="color: #7B68EE"><font size="2">预览</font></a></span> </td> <td bordercolor="#FFFFFF" width="416" height="32" align="center"> <span lang="zh-tw"> <font size="2" color="#7B68EE">上传图片 </font></span><input type="file" name="file3" size="20" style="color: #4B0082; font-size: 10 pt; border: 1px solid #4B0082"> <input type="submit" value="传送" name="B1" style="font-size: 10 pt; color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8"> <input type="reset" value="重设" name="B2" style="color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8"> </td> </tr> <tr> <td bordercolor="#FFFFFF" width="78" height="32" style="border: 1pt solid #7B68EE"> <p align="center"><span lang="zh-tw"><a href="javascript:op()" style="color: #7B68EE"><font size="2">预览</font></a></span> </td> <td bordercolor="#FFFFFF" width="416" height="32" align="center"> <span lang="zh-tw"> <font size="2" color="#7B68EE">上传图片 </font></span><input type="file" name="file4" size="20" style="color: #4B0082; font-size: 10 pt; border: 1px solid #4B0082"> <input type="submit" value="传送" name="B1" style="font-size: 10 pt; color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8"> <input type="reset" value="重设" name="B2" style="color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8"> </td> </tr> <tr> <td bordercolor="#FFFFFF" width="78" height="32" style="border: 1pt solid #7B68EE"> <p align="center"><span lang="zh-tw"><a href="javascript:op()" style="color: #7B68EE"><font size="2">预览</font></a></span> </td> <td bordercolor="#FFFFFF" width="416" height="32" align="center"> <span lang="zh-tw"> <font size="2" color="#7B68EE">上传图片 </font></span><input type="file" name="file5" size="20" style="color: #4B0082; font-size: 10 pt; border: 1px solid #4B0082"> <input type="submit" value="传送" name="B1" style="font-size: 10 pt; color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8"> <input type="reset" value="重设" name="B2" style="color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8"> </td> </tr> </table> </form> </center> </body> </html> --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.225.204.22 ※ 编辑: jenny7587 来自: 61.225.204.22 (10/21 18:08)
1F:推 goooeooo:大家如果要看完这整偏都花多久时间阿 10/23 15:43







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Soft_Job站内搜寻

TOP