webForumDet fria alternativet

Ladda upp fil !

ASP

22 svar · 630 visningar · startad av asp

Medlem sedan aug. 2002733 inlägg
Frågan#1

Jag har bara ändrat mappen från exemplet. Jag vill att man skall lägga i filen i mappen amica som finns i mappen där denna fil finns.

<%
Set Upload = Server.CreateObject("Persits.Upload")
' Do not throw the "Wrong ContentType error first time out
Upload.IgnoreNoPost = True
Count = Upload.Save(Server.MapPath("amica"))
If Count > 0 Then
Response.Write Count & " file(s) uploaded."
End If
%>

<HTML>
<BODY BGCOLOR="#FFFFFF">
<h3>Simple Upload</h3>
<FORM METHOD="POST" ENCTYPE="multipart/form-data" ACTION="BothFormAndScript.asp">
<INPUT TYPE="FILE" SIZE="40" NAME="FILE1"><BR>
<INPUT TYPE="FILE" SIZE="40" NAME="FILE2"><BR>
<INPUT TYPE="FILE" SIZE="40" NAME="FILE3"><BR>
<INPUT TYPE=SUBMIT VALUE="Upload!">
</FORM>
</BODY>
</HTML>

Felet:

Persits.Upload.1 error '800a0005' 

The system cannot find the path specified. 

/BothFormAndScript.asp, line 5

Please.......

Medlem sedan juni 200032 967 inlägg
#2

Du har provat med en slash efter amica?

Medlem sedan aug. 2002733 inlägg
#3

Samma fel tyvärr.

Medlem sedan juni 200032 967 inlägg
#4

Du får nog dubbelkolla att scriptet ligger i samma mapp som undermappen amica ligger i. Det borde ju funka, lixom. :)

Medlem sedan aug. 2002733 inlägg
#5

Alltså Scriptet ligger i en mapp. I den mappen finns en mapp som heter amica. Det är den jag vill lägga filen i.

HUVUDMAPP
--Scriptet
--mapp amica
-----här skall filerna hamna
Medlem sedan juni 200032 967 inlägg
#6

Jo, jag förstår, och det var det jag bad dig dubbelkolla. Men är du säker så är du säker, och då har jag inget mer att tillföra.

Medlem sedan aug. 2002733 inlägg
#7

Är 207% säker!

Hoppas jag kan lösa dehär........

Medlem sedan apr. 20031 660 inlägg
#8

HEJ!

Dina 207% innebär alltså att en utskrift av Server.MapPath("amica") ger rätt sökväg?

Medlem sedan aug. 2002733 inlägg
#9

Japp, det är rätt!

Ingen som har ett script som VET fungerar?

Medlem sedan apr. 20031 660 inlägg
#10

HEJ!

Ja, då borde det som @nders säger fungera.

Om du plockar bort mappen och kör originalkoden, fungerar det?

Medlem sedan aug. 2002733 inlägg
#11

Det var fel mapp jag laddade upp i. Man får endast ladda upp saker i mappen "upload" tydligen. =/

Aja... om det finns någon snäll Gud där ute som vet hur man sätter namn på filen samt kollar så den är bildformat och inte större än t.ex. 50kb.. så... ;-)

Medlem sedan apr. 20031 660 inlägg
#12

HEJ!

- hur man sätter namn på filen
Titta i dokumentation, men troligen SaveAs, ev kompletterat med ett textfält där man skriver in vad den ska hete.

- kollar så den är bildformat
Javascript-validering

- inte större än t.ex. 50kb
Titta i dokumentation

Dokumentationen?
http://www.aspupload.com/manual.html

Jag är faktiskt också 207% (vilket sammanträffande ;)) säker på att dessa frågor varit med på wF tidigare.

Medlem sedan aug. 2002733 inlägg
#13

Tack. Har försökt mkt själv nu.

Det blir dock fel när den kollar om filen är för stor. Det blir inget felmess utan filen läggs inte till oavsett om den är större eller mindre samt att ingen text kommer upp. (filen är för stor...)

<%
Set Upload = Server.CreateObject("Persits.Upload")

Upload.SetMaxSize 22000, True
On Error Resume Next
Upload.Save
Path = Server.MapPath("upload")
FileName = "bild"

For Each File in Upload.Files
   If File.ImageType = "UNKNOWN" Then
	Response.Write "Filen är ingen bild!"
	Response.End
   ElseIf Err.Number = 8 Then
	Response.Write "Filen är för stor!"
   Else
	File.SaveAs Path & "\" & FileName & "." & File.ImageType
	Response.Write "Uppladningen lyckades!"
   End If
Next

%>
Medlem sedan apr. 20031 660 inlägg
#14

HEJ!

Om jag tittar på http://www.aspupload.com/manual_simple.html, nästan längst ned, ser jag en skillnad, du spar inte filen någonstans.

' Perform upload
Upload.Save "c:\upload"

I din översta kod har du det, men nu är den borta, varför?

Vilket kodexempel utgår du från?

Bonus:
Jag gissar att du inte behöver göra en For Each File in Upload.Files, då du väl endast lägger upp en i sänder?

Eftersom jag inte använder denna komponent är detta generella åsikter.

Medlem sedan aug. 2002733 inlägg
#15

Jag sparar filen med denna kod:

File.SaveAs Path & "\" & FileName & "." & File.ImageType

Medlem sedan aug. 2002733 inlägg
#16

Med denna kod fungerar det, men IF-satsen för att kolla om den är för står fungerar inte.

<%
Set Upload = Server.CreateObject("Persits.Upload")

On Error Resume Next
Upload.Save
Path = Server.MapPath("upload")
FileName = "bild"
Upload.SetMaxSize 22, True

For Each File in Upload.Files
   If File.ImageType = "UNKNOWN" Then
	Response.Write "Filen är ingen bild!"
	Response.End
   ElseIf Err.Number = 8 Then
	Response.Write "Filen är för stor!"
   Else
	File.SaveAs Path & "\" & FileName & "." & File.ImageType
	Response.Write "Uppladningen lyckades!"
   End If
Next

%>
Medlem sedan mars 20015 287 inlägg
#17

Det första du ska göra är att ta bort raden "On Error Resume Next" för att eventuellt kunna få ett felmeddelande.

-Sen är det väl en lite klen storlek i ditt sista exempel?

Medlem sedan aug. 2002733 inlägg
#18

Tog bort On Error Resume Next men nu lyckas det inte heller. If satsen som kollar att det är en bild fungerar men inte kollen om filen är för stor...

inget felmess heller... det står bara "Uppladdningen lyckades!"

Medlem sedan aug. 2002733 inlägg
#19

En till fråga.

Någon som vet hur man tar bort en fil (bild) med aspUpload?

Typ: File.Delete("c://program/bild.gif")

Medlem sedan aug. 2002733 inlägg
#20

Löste första problemet med:

If File.Size > 75000 Then...

Fortfarande har jag problem med det andra problemet. Ingen som vet hur man tar bort en bestämd fil?

254 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)