Avatar billede webcreator Nybegynder
21. marts 2003 - 17:48 Der er 23 kommentarer og
3 løsninger

Upload billede til DB

Hej.

Jeg søger information om, hvordan man uploader et billede med ASP til en database, og efterfølgende får det vist igen på en anden side.

På forhånd tak
Avatar billede keysersoze Ekspert
21. marts 2003 - 18:41 #1
først og fremmest er det en dårlig idé at uploade direkte til databasen - læg i stedet billederne i en mappe på serveren og kun et filnavn i databasen.

Før at gøre det skal du undersøge hvad dit webhotel understøtter af upload-komponenter - derefter kan du finde eksempler enten her på eksperten eller direkte på komponentens hjemmeside
Avatar billede jacob_m Nybegynder
21. marts 2003 - 18:43 #2
Jeg har lavet noget lign. bare i PHP, og der gjorde jeg sådan at man uploadede billedet til en bestemt mappe. Og så smed man bare filnavnet ind i databasen. Det er nemmere og mere pladsbesparende !!

/jacob
Avatar billede webcreator Nybegynder
21. marts 2003 - 19:18 #3
Jacob > Yeps, det var også sådan jeg havde forestillet mig det :-)

Nogen bud på, hvordan _det_ kan gøres ?
Avatar billede boris Mester
21. marts 2003 - 19:21 #4
Start med at finde ud af, hvad for fil upload objekter der er til rådighed på din server.
Når du uploader filerne, bestemmer du samtidig hvad de skal hedder. Læg dem i samme bibliotek og gem filnavnet som en lillebittte varchar i databasen.
Avatar billede webcreator Nybegynder
21. marts 2003 - 20:23 #5
Jeg har netop fundet ud af, at jeg har ASP-SmartUpload.

Boris > Uha, lidt for teknisk. Har på fornemmelsen, at jeg har brug for kode-eksempler :-)

Sætter lige points op til 50..
Avatar billede dj-sejler Praktikant
21. marts 2003 - 20:23 #6
Hvis du har ASPUpload kan du bare gøre som beskrevet i dette spørgsmål:

http://www.eksperten.dk/spm/323304
Avatar billede webcreator Nybegynder
21. marts 2003 - 20:27 #7
Jeg synes dog det virker usmart, at jeg skal hen og skifte hele min kode ud, hvis jeg engang får nyt webhotel :(

Kan man ikke gøre et eller andet smart på det punkt ? Eller det er måske i virkeligheden ret enkelt ?

Jeg tænkte også på, at det gerne skulle være muligt at uploade både tekst og billede samtidig. På nuværende tidspunkt kan jeg fint sende data til min database. Mangler blot billede-upload-delen
Avatar billede webcreator Nybegynder
21. marts 2003 - 20:27 #8
DJ-Sejler > Er ASP-Smart-Upload og ASPUpload det samme ?
Avatar billede dj-sejler Praktikant
21. marts 2003 - 20:41 #9
nej... det er det vidst ikke :(
Avatar billede webcreator Nybegynder
21. marts 2003 - 20:46 #10
Pokkers, har lige siddet og rodet med det :/

Oh well, nogen der kan hjælpe mig med AspSmartUpload ?
Avatar billede dj-sejler Praktikant
21. marts 2003 - 20:49 #11
Men ikke du kan få hjælp her?!?

http://www.aspsmart.com/aspSmartUpload/
Avatar billede webcreator Nybegynder
21. marts 2003 - 20:56 #12
uhh, ser fint ud :-)

Vil jeg kigge lidt på.

Tak DJ ! :-)
Avatar billede dj-sejler Praktikant
21. marts 2003 - 21:07 #13
Det var da så lidt :)
Avatar billede webcreator Nybegynder
21. marts 2003 - 21:14 #14
Hm, kan ikke få det til at virke. Skriver lige koderne ned for mine 2 filer :
Avatar billede webcreator Nybegynder
21. marts 2003 - 21:15 #15
Min form, hvorfra tekst og billede uploades :

<form name="add" action="gemdata.asp" method="post" ENCTYPE="multipart/form-data">
<table cellspacing="0" cellpadding="0">

<tr>
    <td width="100"><div class="b2">Titel</div></td>
        <td width="300"><INPUT NAME = "titel"
  style="WIDTH: 180px; HEIGHT: 23px" size=23 maxlength="17"></td>
</tr>

<tr>
        <td width="100"><div class="b2">Genre</div></td>
        <td width="300"><INPUT NAME = "genre"
  style="WIDTH: 180px; HEIGHT: 23px" size=23 maxlength="8"></td>
</tr>

<tr>
        <td width="100"><div class="b2">Aldersgruppe</div></td>
        <td width="300"><INPUT NAME = "alder"
  style="WIDTH: 180px; HEIGHT: 23px" size=23 maxlength="13"></td>
</tr>

<tr>
        <td width="100"><div class="b2">Karakter</div></td>
        <td width="300"><INPUT NAME = "karakter"
  style="WIDTH: 180px; HEIGHT: 23px" size=23 maxlength="12"></td>
</tr>

<tr>
        <td width="100"><div class="b2">Beskrivelse</div></td>
        <td width="300"><TEXTAREA style="WIDTH: 180px; HEIGHT: 55px" name="beskrivelse" cols=1 rows=3 maxlength="30"></TEXTAREA></td>
</tr>

<tr>
        <td><small><font face="Verdana">Select&nbsp;a&nbsp;first&nbsp;file&nbsp;:&nbsp; </font></small></td>
        <td><small><font face="Verdana"><input TYPE="file" name="FILE1"></font></small></td>
</tr>

<tr>
        <td width="100"></td>
        <td width="300"><INPUT style="WIDTH: 180px; HEIGHT: 22px" TYPE=submit VALUE="Gem data"></td>
</tr>

</table>
</form>
Avatar billede webcreator Nybegynder
21. marts 2003 - 21:15 #16
Min ASP-Fil, som uploader sagerne fra formen :

<%

'  Variables
'  *********
  Dim mySmartUpload
  Dim file
  Dim oConn
  Dim strSQL
  Dim oRs
  Dim intCount
  intCount=0
       
'  Object creation
'  ***************
  Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")

'  Upload
'  ******
  mySmartUpload.Upload


var1=request.form("titel")
var2=request.form("genre")
var3=request.form("alder")
var4=request.form("karakter")
var5=request.form("beskrivelse")

'  Connect to the DB
'  *****************
  Set oConn = Server.CreateObject("ADODB.Connection")
  curDir = Server.MapPath("db.mdb")
  oConn.Open "DBQ="& curDir &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;"


' SQL sætning opbygges
strSQL = "Insert into anmeldelse ("

strSQL = strSQL & "titel, "
strSQL = strSQL & "genre, "
strSQL = strSQL & "alder, "
strSQL = strSQL & "karakter, "
strSQL = strSQL & "beskrivelse) "

strSQL = strSQL & "values( "

strSQL = strSQL & "'"& var1 &"', "
strSQL = strSQL & "'"& var2 &"', "
strSQL = strSQL & "'"& var3 &"', "
strSQL = strSQL & "'"& var4 &"', "
strSQL = strSQL & "'"& var5 &"')"

' SQL sætning eksekveres
Cn.Execute(strSQL)


'  Open a recordset
'  ****************
  strSQL = "SELECT FILENAME,FILE FROM TFILES"

  Set oRs = Server.CreateObject("ADODB.recordset")
  Set oRs.ActiveConnection = oConn
  oRs.Source = strSQL
  oRs.LockType = 3
  oRs.Open

'  Select each file
'  ****************
  For each file In mySmartUpload.Files
  '  Only if the file exist
  '  **********************
      If not file.IsMissing Then

      '  Add the current file in a DB field
      '  **********************************
        oRs.AddNew
        file.FileToField oRs.Fields("FILE")
        oRs("FILENAME") = file.FileName
        oRs.Update
        intCount = intCount + 1
      End If
  Next

'  Display the number of files uploaded
'  ************************************
  Response.Write(intCount & " file(s) uploaded.<BR>")



'  Destruction
'  ***********
  oRs.Close
  oConn.Close
  Set oRs = Nothing
  Set oConn = Nothing

response.redirect("edit.asp?opd=<h1>Databasen er opdateret!</h1>")

%>
Avatar billede webcreator Nybegynder
21. marts 2003 - 21:16 #17
Nogen der kan se, hvad jeg har af fejl i mit dokument ?
Avatar billede webcreator Nybegynder
21. marts 2003 - 21:46 #18
?
Avatar billede keysersoze Ekspert
21. marts 2003 - 21:56 #19
prøv at fortæl hvad der sker af fejl?..
Avatar billede webcreator Nybegynder
21. marts 2003 - 22:55 #20
Der sker intet. Jeg får en "The page cannot be displayed"-fejl. Og jeg ved, at siden eksistere.

Jeg hopper i seng nu, men tjekker igen engang i morgen - så håber jeg kan få lidt mere hjælp der. Skriv endelig i nat også :)
Avatar billede keysersoze Ekspert
21. marts 2003 - 23:11 #21
funktioner -> internetindstillinger -> avanceret -> fjern kryds i "vis meddelelse om uskadelige http-fejl"

så får du en fejlbesked der kan bruges...
Avatar billede webcreator Nybegynder
22. marts 2003 - 12:04 #22
Hm, jeg ville blive glad, hvis jeg kunne faa et simpelt kodeeksempel, hvor der baade uploades et billede og lidt tekst, samt en stump kode, der viser tekst og billede igen...
Avatar billede boris Mester
22. marts 2003 - 12:19 #23
Hvis du får en side 404 fejl, så er det fordi du redirecter til en side, der ikke findes.
Prøv, når du er på "siden kan ikke vises" at højreklikke, se på egenskaber, og så kan du se, hvilken side du har redirected til, og om det giver fejl, at der indgår både '<', '>' og '/' i din URL.
Avatar billede webcreator Nybegynder
22. marts 2003 - 12:30 #24
Som sagt, saa eksisterer siden. Jeg er altsaa ikke helt dum. Er bare noob til ASP.
Jeg faar flg. fejl paa min linux-maskine :

Request object error 'ASP 0207 : 80004005'

Cannot use Request.Form

/multi/gemdata.asp, line 29

Cannot use Request.Form collection after calling BinaryRead.

Noget tyder paa, at jeg har boevl med min form. Kigger jeg lige paa om lidt..
Avatar billede boris Mester
22. marts 2003 - 17:07 #25
Hvad om du definerede input type i de tekst felterne også?
Har du prøvet at bruge formen med kun fil og udkommentere resten for at se, om det virker?
Avatar billede webcreator Nybegynder
22. marts 2003 - 17:34 #26
Det er jeg netop ved at teste :-)
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