我有一个ASP函数,它应该根据用户检查的内容归档文件。出于某种原因,它只存档第一个文件。
例如,如果用户检查文件BD_Test1.txt
和Test2.txt
,则压缩文件将只包含BD_Test1.txt
。
<form method="post">
Resume 1 <input type="checkbox" name=check1 value="BD_Test1.txt"><br>
Resume 2 <input type="checkbox" name=check1 value="BD_Test2.txt"><br>
Resume 3 <input type="checkbox" name=check1 value="BD_Test3.txt"><br>
Resume 4 <input type="checkbox" name=check1 value="BD_Test4.txt"><br>
Resume 5 <input type="checkbox" name=check1 value="BD_Test5.txt"><br>
Resume 6 <input type="checkbox" name=check1 value="BD_Test6.txt"><br>
Resume 7 <input type="checkbox" name=check1 value="BD_Test7.txt"><br>
Resume 8 <input type="checkbox" name=check1 value="BD_Test8.txt"><br>
Resume 9 <input type="checkbox" name=check1 value="BD_Test9.txt"><br>
Resume 10 <input type="checkbox" name=check1 value="BD_Test10.txt"><br>
<br><input type = "submit" name="zipFile" value = "Download"/><br>
</form>
<br><br>
<%
If (Request.Form("zipFile") <> "") Then
Call archiveFile()
End If
%>
Function archiveFile()
Dim request_Value, request_File
Dim compress_Zip
Dim i
request_Value = Request("check1")
request_File = split(request_Value,",")
Set compress_Zip = Server.CreateObject("XStandard.Zip")
For i = LBound(request_File) to UBound(request_File)
compress_Zip.pack Server.MapPath("resumes/" & request_File(i)), Server.MapPath("compressed/BD_Compressed.zip")
Next
Set compress_Zip = Nothing
End Function
答案 0 :(得分:1)
我发现这个问题,对于那些会遇到同样问题的人来说......
ASP代码request_File = split(request_Value,",")
仅针对逗号而不是命令和空格进行拆分。因此,request_File
输出的Test1.txt Test2.txt
应该是Test1.txtTest2.txt
这告诉代码压缩不存在的文件。