Avatar billede kongsteddk Nybegynder
02. oktober 2002 - 19:44 Der er 7 kommentarer og
1 løsning

ASPUpload og DB

Hej!

Jeg sidder og roder med en funktion, så man kan uploade billeder med en beskrivelse. Oplysnigerne skal gemmes i en Access db, og filen som fil på webstedet.
Hvordan gør man det? Er der nogen der evt kan give et link til et godt eksempel?
Avatar billede cht Nybegynder
02. oktober 2002 - 22:32 #1
Du kan bruge følgende:

<%
    Set Upload = Server.CreateObject("Persits.Upload.1")
    Upload.Save "c:\upload"
%>

Files:<BR>
<%
For Each File in Upload.Files
    Response.Write File.Name & "=" & File.Path & " (" & File.Size & ")<BR>"
Next
%>
<P>
Other items:<BR>
<%
For Each Item in Upload.Form
    Response.Write Item.Name & "=" & Item.Value & "<BR>"
Next


set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("billeder.mdb")

conn.Execute("INSERT INTO billeder (info,filename) VALUES ('" & replace(Upload.Form("info"),"'","''") & "','" & replace(File.Name,"'","''") & "')")
conn.Close
set conn = nothing
%>
Avatar billede kongsteddk Nybegynder
03. oktober 2002 - 18:25 #2
Okay. Og hvad så hvis man vil uploade fx 10 filer og beskr. af gangen?
Avatar billede cht Nybegynder
03. oktober 2002 - 19:09 #3
Der er lige en lille fejl i det jeg skrev, linjen skal indsættes lige efter:
Response.Write File.Name & "=" & File.Path & " (" & File.Size & ")<BR>"

Du kan sagtens tilføje flere felter til linjen:

conn.Execute("INSERT INTO billeder (info,filename,text1,text2) VALUES ('" & replace(Upload.Form("info"),"'","''") & "','" & replace(File.Name,"'","''") & "','" & replace(Upload.Form("text1"),","'","''") & "','" & replace(Upload.Form("text2"),"'","''") & "')")

og linjerne:

set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("billeder.mdb")

skal indsættes før:
For Each File in Upload.Files



Hvis du har forskellige tekster til de forskellige billeder, så kan du bruge følgende:

For Each File in Upload.Files

    Response.Write File.Name & "=" & File.Path & " (" & File.Size & ")<BR>"
Next
Avatar billede cht Nybegynder
03. oktober 2002 - 19:11 #4
Jeg blev ikke helt færdig med det sidste, der skulle stå:

Hvis du har forskellige tekster til de forskellige billeder, så kan du bruge følgende:

For Each File in Upload.Files
    x=x+1
conn.Execute("INSERT INTO billeder (info,filename,text1,text2) VALUES ('" & replace(Upload.Form("info"&x),"'","''") & "','" & replace(File.Name,"'","''") & "','" & replace(Upload.Form("text1"),","'","''") & "','" & replace(Upload.Form("text2"),"'","''") & "')")

    Response.Write File.Name & "=" & File.Path & " (" & File.Size & ")<BR>"
Next

Hvor du på din side kan lave:

<input type=text name=info1>
<input type=text name=info2>
<input type=text name=info3>
osv.
Avatar billede kongsteddk Nybegynder
15. oktober 2002 - 15:30 #5
Undskyld den lange svartid!
Det er prøvet, og jeg kunne ikke få det til at virke!
Avatar billede cht Nybegynder
15. oktober 2002 - 15:34 #6
jeg har desværre ikke tid til at kigge på det lige nu, men får du nogen fejlmeddelelser eller noget?
Avatar billede kongsteddk Nybegynder
15. oktober 2002 - 15:56 #7
Nej. Den skriver bare ikke noget i databasen. Jeg kan gøre det , hvis der ikke skal nogen beskrivelse med, altså at der kun skal gemmes filnavn i db'en. Beskrivelsen kommer ikke med!
Avatar billede cht Nybegynder
15. oktober 2002 - 16:21 #8
ok, jeg har i hvert en fil liggende her, som virker. Jeg kan sende den til din e-mail, hvis du gerne vil have den.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester