webForumDet fria alternativet

ASPUpload många bilder

ASP

9 svar · 181 visningar · startad av McD

Medlem sedan mars 20002 520 inlägg
Frågan#1

Inlägget redigerat. Ej kompatibelt med wF2

Medlem sedan dec. 200012 464 inlägg
#2

Döp alla fälten för thumbnails till tumb och alla för bilder till bild.


dim bild(19)
i = 0
for each tum in upload.form("tumb")
bild(i) = Right(tum,Len(tum)-InstrRev(tum,"\"))
i = i + 1
next

i = 10
for each tum in upload.form("bild")
bild(i) = Right(tum,Len(tum)-InstrRev(tum,"\"))
i = i + 1
next

SQL = "INSERT INTO fisketur"
SQL = SQL & "(subject ,fisk ,adat ,tumb ,tumb1 ,tumb2 ,tumb3, tumb4 ,tumb5 ,tumb6 ,tumb7 ,tumb8 ,tumb9 ,bild ,bild1 ,bild2, bild3, bild4 ,bild5 ,bild6 ,bild7 ,bild8 ,bild9 ,meddelande, meddelande2)"

SQL = SQL & "VALUES ("&_
"'" & Upload.Form("subject") & "', " &_
"'" & Upload.Form("fisk") & "'," 
for i = 0 to 19
    sql = sql & "'" & bild(i) & "','"
next
sql = sql & "#" & date() & "#, " &_
"'" & Upload.Form("meddelande") & "'," &_
"'" & Upload.Form("meddelande2") & "'" &_
")"

OT:
Egentligen borde du definiera om din databas så att du lagrar bild/thumbnail i en egen tabell och då får du inga begränsningar på hur många bilder man kan lägga upp.

------------------
essentitia preter non sans multiplicandum

[Redigerat av LarsG den 08 sep 2001]

Medlem sedan mars 20002 520 inlägg
#3

Tack lars... har inte testat en men vad menar du med

Döp alla fälten för thumbnails till tumb och alla för bilder till bild.

i inputformuläret?

mm, jag har tänkt på att lägga dem i egen tabell men jag har inte behov av att lägga upp fler bilder. då buggar min layout ut :D och det tar för lång tid att ladda sidan...

------------------
McD- Burgers for the people!

www.McDz.net www.SweQuake.com

[Redigerat av McD den 08 sep 2001]

[Redigerat av McD den 08 sep 2001]

Medlem sedan dec. 200012 464 inlägg
#4

Ja, i inputformuläret.

------------------
essentitia preter non sans multiplicandum

Medlem sedan mars 20002 520 inlägg
#5

hihihi... detta är långt "over my head" så det är bäst att fråga.

Mycket tacksam för hjälp...

Jag vill gärna förstå vad som händer här:

Är det att man "dynamiskt" namnsätter prylarna istället för att ge dem olika värden i inputboxarna. ?!?!?!

Vad händer då när man bara har 14 bilder? buggar inte sqlsträngen ut då?
genom att det finns fler grejer i SQL = SQL & "(subject ,fisk ,adat ,tumb ,tumb1 ,tumb2 ,tumb3, tumb4 ,tumb5 ,tumb6 ,tumb7 ,tumb8 ,tumb9 ,bild ,bild1 ,bild2, bild3, bild4 ,bild5 ,bild6 ,bild7 ,bild8 ,bild9 ,meddelande, meddelande2)"
än det finns prylar att stoppa in i dem?

Jag burkar ju alltid få felmeddelanden som säger att fält och målfält är olika i antal... när jag gör detta på vanigt sätt :)

------------------
McD- Burgers for the people!

www.McDz.net www.SweQuake.com

[Redigerat av McD den 08 sep 2001]

Medlem sedan mars 20002 520 inlägg
#6

humm

Körningsfel i Microsoft VBScript (0x800A01B6)
Objektet stöder inte egenskapen eller metoden.
/nyamcdz/admin/admin.asp, line 1065

o där det buggar...

<%
        Set Upload = Server.CreateObject("Persits.Upload.1")
	Count = Upload.Save("C:\Inetpub\wwwroot\nyamcdz\fiske\bildercamp")
		
	dim bild(19)
        i = 0
        [b]for each tum in upload.form("tumb")[/b]
        bild(i) = Right(tum,Len(tum)-InstrRev(tum,"\"))
        i = i + 1
        next

        i = 10
        for each tum in upload.form("bild")
        bild(i) = Right(tum,Len(tum)-InstrRev(tum,"\"))
        i = i + 1
        next

        SQL = "INSERT INTO fisketur"
        SQL = SQL & "(subject ,fisk ,tumb ,tumb1 ,tumb2 ,tumb3, tumb4 ,tumb5 ,tumb6 ,tumb7 ,tumb8 ,tumb9 ,bild ,bild1 ,bild2, bild3, bild4 ,bild5 ,bild6 ,bild7 ,bild8 ,bild9 ,adat ,meddelande, meddelande2)"

        SQL = SQL & "VALUES ("&_
        "'" & Upload.Form("subject") & "', " &_
        "'" & Upload.Form("fisk") & "'," 
        for i = 0 to 19
        sql = sql & "'" & bild(i) & "','"
        next
        sql = sql & "#" & date() & "#, " &_
        "'" & Upload.Form("meddelande") & "'," &_
        "'" & Upload.Form("meddelande2") & "'" &_
        ")"

        Databas.Execute SQL

        SQL = "SELECT TOP 1 * FROM fiskecamp ORDER by id DESC"
        set rs = Databas.Execute(SQL)
        %>

Kanske ska tillägga att två bilder kom upp på servern la in i de två första file.. prylarna tumb och bild.

------------------
McD- Burgers for the people!

www.McDz.net www.SweQuake.com

[Redigerat av McD den 08 sep 2001]

Medlem sedan dec. 200012 464 inlägg
#7

Om man har flera fält med samma namn så kommer de värden som matas in i fälten att lagras som kommaseparerad lista. Normalt så brukar man kunna använda for each för att få fram varje elememt i listan.

Nu vet jag inte hur den uploadfunktionern bygger upp formuläret men du kan testa detta. (Jag la in en testutskrift för att se hur värdena ser ut.)


response.write "tumbs " & upload.form("tumb") & "<br>"
tarr = split(upload.form("tumb"),",")
barr = split(upload.form("bild"),",")

SQL = "INSERT INTO fisketur"
SQL = SQL & "(subject ,fisk ,adat ,tumb ,tumb1 ,tumb2 ,tumb3, tumb4 ,tumb5 ,tumb6 ,tumb7 ,tumb8 ,tumb9 ,bild ,bild1 ,bild2, bild3, bild4 ,bild5 ,bild6 ,bild7 ,bild8 ,bild9 ,meddelande, meddelande2)"
SQL = SQL & "VALUES ("&_
"'" & Upload.Form("subject") & "', " &_
"'" & Upload.Form("fisk") & "', " &_ 

for i = 0 to 9
    if i > ubound(tarr) then
       sql = sql & "'',"
    else
       sql = sql & "'" & tarr(i) & "',"
    end if
next

for i = 0 to 9
    if i > ubound(barr) then
       sql = sql & "'',"
    else
       sql = sql & "'" & barr(i) & "',"
    end if
next
sql = sql & "#" & date() & "#, " &_
"'" & Upload.Form("meddelande") & "'," &_
"'" & Upload.Form("meddelande2") & "'" &_
")"

split delar upp en sträng i olika delar (efter varje komma) och stoppar in dessa i en array. Ubound returnerar storleken på arrayen, så om det finns mindre än 10 bilder/tumbs så läggs det in '' i databasen.

------------------
essentitia preter non sans multiplicandum

Medlem sedan mars 20002 520 inlägg
#8

Var lättare sagt än gjort att få fram mer info till dig...

Kompileringsfel i Microsoft VBScript (0x800A03EA)
Syntaxfel
/nyamcdz/admin/admin.asp, line 1073
for i = 0 to 9

koden o felet

<%
        Set Upload = Server.CreateObject("Persits.Upload.1")
	Count = Upload.Save("C:\Inetpub\wwwroot\nyamcdz\fiske\bildercamp")
		
	response.write "tumbs " & upload.form("tumb") & "<br>"
tarr = split(upload.form("tumb"),",")
barr = split(upload.form("bild"),",")

SQL = "INSERT INTO fiskecamp"
SQL = SQL & "(subject ,fisk ,adat ,tumb ,tumb1 ,tumb2 ,tumb3, tumb4 ,tumb5 ,tumb6 ,tumb7 ,tumb8 ,tumb9 ,bild ,bild1 ,bild2, bild3, bild4 ,bild5 ,bild6 ,bild7 ,bild8 ,bild9 ,meddelande, meddelande2)"
SQL = SQL & "VALUES ("&_
"'" & Upload.Form("subject") & "', " &_
"'" & Upload.Form("fisk") & "', " &_ 

[b]for i = 0 to 9[/b]
if i > ubound(tarr) then
sql = sql & "'',"
else
sql = sql & "'" & tarr(i) & "',"
end if
next

for i = 0 to 9
if i > ubound(barr) then
sql = sql & "'',"
else
sql = sql & "'" & barr(i) & "',"
end if
next
sql = sql & "#" & date() & "#, " &_
"'" & Upload.Form("meddelande") & "'," &_
"'" & Upload.Form("meddelande2") & "'" &_
")"

        Databas.Execute SQL

        SQL = "SELECT TOP 1 * FROM fiskecamp ORDER by id DESC"
        set rs = Databas.Execute(SQL)
        %>

Får detta när jag försöker komma åt adminsidan...

------------------
McD- Burgers for the people!

www.McDz.net www.SweQuake.com

[Redigerat av McD den 08 sep 2001]

Medlem sedan dec. 200012 464 inlägg
#9

Kilppte och klistrade lite snabbt där. Det skall inte vara något & _ innan den första for loopen (precis före din fetmarkerade rad)


SQL = SQL & "VALUES ("&_
"'" & Upload.Form("subject") & "', " &_
"'" & Upload.Form("fisk") & "', "

Blev det något utskrift av tumbs?

------------------
essentitia preter non sans multiplicandum

[Redigerat av LarsG den 08 sep 2001]

Medlem sedan mars 20002 520 inlägg
#10

nej det blev det inte... får typblandningsfel.. ska byta plats på adat verkar ligga på fel plats

mm det var det som var felet...

får nu ut själva turen fint...

står över turen

"tumbs"

och då la jag till en bild i första tumbs filgrejen och en bild i första bild filsgrejen.

Har nu även testat med att lägga till 3 st olika bilder i fälten tumb och får ändå bara ut texten "tumbs"

------------------
McD- Burgers for the people!

www.McDz.net www.SweQuake.com

[Redigerat av McD den 09 sep 2001]

251 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)