%@ Language=VBScript %>
<%
if request.totalbytes > 0 then
upload_folder = "fileplace"
'get request as binary data
bdata = request.binaryread(request.totalbytes)
'convert binary data to ascii
data = ""
for i = 1 to lenb(bdata)
data = data & chr(ascb(midb(bdata, i, 1)))
next
'get the request delimiter(s)
delimiter = vbnewline & mid(data, 1, instr(data, vbnewline) + 1)
eorequest = replace(delimiter, vbnewline, "--", 2)
'strip first and last lines from data
bo2ndline = instr(data, vbnewline) + 2
eon_1thline = instrrev(data, eorequest) - 1
lodata = eon_1thline - bo2ndline
data = mid(data, bo2ndline, lodata)
'create data item array
data = split(data, delimiter)
for i = 0 to ubound(data)
data(i) = split(data(i), vbnewline & vbnewline)
dataitemisfile = false
'look for the filename token
fnametoken = instr(data(i)(0), "filename=")
'if the data item is a file
if ((fnametoken <> 0) and (len(trim(data(i)(1))) <> 0)) then
'get the filename
eofname = instr(fnametoken, data(i)(0), vbnewline) - 1
bofname = instrrev(data(i)(0), "\", eofname) + 1
lofname = eofname - bofname
fname = mid(data(i)(0), bofname, lofname)
' save the file
path = server.mappath(upload_folder & "\" & fname)
Response.Write path & "
"
set fso = server.createobject("scripting.filesystemobject")
set file = fso.CreateTextFile(path, true)
file.write data(i)(1)
file.close
set file = nothing
set fso = nothing
' replace file contents with file name in data item array
data(i)(1) = fname
dataitemisfile = true
' end if the data item is a file
end if
'get data item name
boname = instr(data(i)(0), """") + 1
loname = instr(boname, data(i)(0), """") - boname
data(i)(0) = mid(data(i)(0), boname, loname)
'write the data item name and value pair
response.write(data(i)(0) & " = """ & data(i)(1) & """" & vbnewline)
next
end if
%>
File Upload Demo