webForumDet fria alternativet

ASPupload - Fel

ASP

31 svar · 804 visningar · startad av NEOLiNES

Medlem sedan okt. 200459 inlägg
Frågan#1

Jag har två bilder som jag vill spara tillsammans med informationen. Det är prodBILDLITEN & prodBILDSTOR. Va fan funkar det inte för?

http://www.aspsidan.se/code/?c=2403
http://www.aspsidan.se/code/?c=2402&error=21

Felmeddelande
Server.MapPath() error 'ASP 0174 : 80004005'

Invalid Path Character(s)

/incAdd3.asp, line 22

An invalid '/' or '\' was found in the Path parameter for the MapPath method.

Medlem sedan mars 20015 287 inlägg
#2

Felmeddelandet känns egentligen skapligt självförklarande.

Du har ett värde i Upload.Form("prodMARKE")&" ?
(I formen när du postar den?)

Om du klipper bort Server.MapPath ur den rad du markerat och sen skriver ut variabeln mapp, vad ger den dig då?

Medlem sedan okt. 200459 inlägg
#3

solbulle skrev:

Felmeddelandet känns egentligen skapligt självförklarande.

Du har ett värde i Upload.Form("prodMARKE")&" ?
(I formen när du postar den?)

Om du klipper bort Server.MapPath ur den rad du markerat och sen skriver ut variabeln mapp, vad ger den dig då?

Grejjer är den att Upload.Form("prodMARKE") är tom, jag behöver veta hur jag får informationen från prodMARKE

Medlem sedan juni 200032 967 inlägg
#4

I formulärkoden du länkar till skriver du ju värdet till ett hiddenfält. Såsom koden är skriven så tas ju det värdet från ett tidigare formulär, som postar koden till sidan med det här formuläret på.

Medlem sedan okt. 200459 inlägg
#5

Jo, men det har väl ingen betydelse om det är ett "hiddenfält" och att det har skickats vidare?

Medlem sedan juni 200032 967 inlägg
#6

Nej, så länge det verkligen kommer från ett tidigare formulär och innehåller ett värde, det är ju knappast någonting vi kan veta.

Kolla att det skickas rätt från det första formuläret, ett det skrivs rätt i hiddenfältet i det andra, etc.

Medlem sedan okt. 200459 inlägg
#7

Jo, men de kollade jag tidigare och de gör det.

Medlem sedan juni 200032 967 inlägg
#8

Ok.

Nu har jag kikat på koden för sparandet, och är det inte så, att man måste köra metoden Save innan man kan komma åt formulärvariabler?

Flytta alltså upp raden med .Save till direkt under Set upload =... - raden.

edit; vilket ju förstås inte kommer att fungera, eftersom du använder en form-variabel i mappnamnet nej. Kan du inte skicka just mappnamnet (prodmarke) som en querystring istället?

mvh

Medlem sedan okt. 200459 inlägg
#9

Hmmm, men då vet jag ju inte vad mappen heter, om jag inte får hämta den innan jag laddar upp :S

Medlem sedan juni 200032 967 inlägg
#10

Om du skickar just den parametern som querystring istället går det bra.

Medlem sedan okt. 200459 inlägg
#11

Gjorde de och de funkar fint. Hur gör jag för att byta filnamn då?

Dummy
<%
Set Upload = Server.CreateObject("Persits.Upload.1")
Mappen = "../photo.streetwize.se/prod/"&Request.QueryString("kat")&"/"
Mapp = Server.MapPath(Mappen)
X=0
For Each File in Upload.Files
X=X+1
File.Name = Request.QueryString("kat")&"-"&Request.QueryString("name")&"-"&X
Next
Upload.Save(Mapp)
%>

Medlem sedan juni 200032 967 inlägg
#12

Använd filobjektets metod SaveAs istället för att ange sökvägen till .Save.

(väldigt mycket kan man få reda på genom att läsa dokumentationen)

Medlem sedan okt. 200459 inlägg
#13

jag är nog lite bakom flötet idag.

Kod
<%
Set Upload = Server.CreateObject("Persits.Upload.1")
Mappen = "../photo.streetwize.se/prod/"&Request.QueryString("kat")&"/"
Mapp = Server.MapPath(Mappen)
X=0
For Each File in Upload.Files
X=X+1
File.Name = Request.QueryString("kat")&"-"&Request.QueryString("name")&"-"&X
Next
File.SaveAsVirtual(Mapp&""&Request.QueryString("kat")&"-"&Request.QueryString("name")&"-"&X)
%>

Felmeddelande
Microsoft VBScript runtime error '800a01b6'

Object doesn't support this property or method: 'Upload.SaveAsVirtual'

/incAdd3.asp, line 11

Medlem sedan juni 200032 967 inlägg
#14

Det är filobjektet som har den metoden, inte "huvudobjektet". Så, var kör du "Upload.SaveAsVirtual"?

Medlem sedan okt. 200459 inlägg
#15

Microsoft VBScript runtime error '800a01b6'

Object doesn't support this property or method: 'Upload.SaveAsVirtual'

/incAdd3.asp, line 11

Medlem sedan juni 200032 967 inlägg
#16

Jo, du skrev det. Men jag ser inte "Upload.SaveAsVirtual" i din kod? Är det felmeddelandet som är trasigt, eller är det du som postat fel kod?

Medlem sedan okt. 200459 inlägg
#17

Jag postade fel :P Ska självklart stå Upload.SaveAsVirtual(Mapp&""&Request.QueryString("kat")&"-"&Request.QueryString("name")&"-"&X)

Medlem sedan juni 200032 967 inlägg
#18

Då är det i så fall det som är fel. Det ska stå som det gjorde i ditt förra inlägg med kod, men raden ska ligga före next.

Medlem sedan okt. 200459 inlägg
#19

Okej, nu får jag inget felmeddelande iaf, men de laddas inte upp något.

Kod
Set Upload = Server.CreateObject("Persits.Upload.1")
Mappen = "../photo.streetwize.se/prod/"&Request.QueryString("kat")&"/"
Mapp = Server.MapPath(Mappen)
X=0
For Each File in Upload.Files
X=X+1
Upload.SaveAsVirtual(Mapp&""&Request.QueryString("kat")&"-"&Request.QueryString("name")&"-"&X)
Next

Medlem sedan juni 200032 967 inlägg
#20

Jag provar igen då:

@nders skrev:

Det är filobjektet som har den metoden, inte "huvudobjektet".

@nders skrev:

Det ska stå som det gjorde i ditt förra inlägg med kod, men raden ska ligga före next.

Du borde få samma felmeddelande med den koden du postade senast, eftersom objektet Upload inte har metoden SaveAsVirtual.

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