webForumDet fria alternativet

Ladda upp filer i olika mappar.

ASP

2 svar · 255 visningar · startad av saw

Medlem sedan mars 20011 880 inlägg
Frågan#1

Jag har hittat ett litet fint script, som man kan ladda upp filerna med. Nu ville jag, beroende av fil, kunna lägga det i olika mappar:
I laddauppform.asp

 
<FORM METHOD="Post" ENCTYPE="multipart/form-data" ACTION="laddauppfil.asp">
Hämta fil : <BR><INPUT TYPE="file" NAME="blob">
<BR>
Filtyp:
<select name="mappNamn" size="1">
 <option value="bild">Bilder</option>
 <option value="mp3">MP3</option>
</select>
<INPUT TYPE="submit" NAME="Skcicka" VALUE=" Hämta filen nu.">
</FORM>
I laddaupfil.asp

[kod]

pathEnd = Len(Server.mappath(Request.ServerVariables("PATH_INFO")))-15
Set MyFile = FSO.CreateTextFile(Left(Server.mappath(Request.ServerVariables("PATH_INFO")),pathEnd)  & filename)

Om jag ändrar det sista till & "/bild/" & filename då får jag inga fel,
men om jag ändrar till:
[kod}
Set MyFile = FSO.CreateTextFile(Left(Server.mappath
(Request.ServerVariables("PATH_INFO")),pathEnd) & request
("mappNamn") & filename)
'då får jag följande error

Request-objekt, ASP 0208 (0x80004005)
Det går inte att använda den allmänna Request-samlingen efter att BinaryRead har anropats.
/Hemsidor/Test/laddauppfil.asp, line 25

Hur kan jag komma förbi detta?
:q

Medlem sedan mars 20011 880 inlägg
#2

Jag kom på en liten fulling.

pathEnd = Len(Server.mappath(Request.ServerVariables("PATH_INFO")))-15
if RIGHT(filename,3)="mp3" then
	Set MyFile = FSO.CreateTextFile(Left(Server.mappath(Request.ServerVariables("PATH_INFO")),pathEnd)  & "/mp3/" & filename)
else
	Set MyFile = FSO.CreateTextFile(Left(Server.mappath(Request.ServerVariables("PATH_INFO")),pathEnd)  & "/bild/" & filename)
end if

Kan nog vara lika bra..
:i

Medlem sedan nov. 20017 144 inlägg
#3

Du kan även amvända filtyp "type" med fso.

263 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
132 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
129 ms — ändringar (db)