webForumDet fria alternativet

Bild till ACCESS-databas

ASPur ASP

19 svar · 475 visningar · startad av LeonL

Medlem sedan dec. 20025 871 inlägg
Frågan#1

Hur gör jag för att lägga in en bild i en Access-databas för att vid senare tillfällen ta fram bilden på en sida?

Något som ska ändras i databasen?
:q :q

Medlem sedan sep. 20026 425 inlägg
#2

Du kan lägga in en text i en kolumn i databasen, och sen när du skriver ut info från databasen kan det bli så här:

<%
'anslut till databasen etc.

Response.Write "<img src=""" & Rs("bild") & ".gif""" alt="""" />"

'stäng objekt
%>

Använder du HTML får du ersätta " />" på slutet med ">". ;)

Medlem sedan dec. 20025 871 inlägg
#3

Jag kanske formulerade frågan fel... Jag försöker igen...

Hur gör jag för att LAGRA en bild I EN ACCESS-databas? :q Någon som vet? :OO

Medlem sedan juni 20019 519 inlägg
#4

varför vill du detta? Tänk om någon lägger upp en stor bild.. blir inte databasen större -> Segare sida?

Medlem sedan dec. 20025 871 inlägg
#5

Eftersom den s.k. "någon" är jag så komemr jag inte att lägga upp en stor bild... bara JPEG-bilder som är ca 200*200
Privatbruk! ;)

Medlem sedan mars 20015 287 inlägg
#6

m_soderlund skrev:

Använder du HTML får du ersätta " />" på slutet med ">". ;)

Hur många av oss tror du inte anväder sig av html? ;)

Medlem sedan feb. 200112 078 inlägg
#7

Varför ha dem just i databasen?

Känns mer fördelaktigt att ha dem i en egen mapp, på servern.

Medlem sedan mars 20021 889 inlägg
#8

Varför svarar ni inte på hans fråga i stället för att fråga varför han vill ha svar? :q

Medlem sedan mars 2003772 inlägg
#9

Du kan konvertera bilderna till hexvärden och sedan skriva ut dom. Jag tror kollumnens datatyp ska vara på Binary. Jag gjorde detta för rätt länge sedan och det fungerade smärtfritt. Bilderna lagrades alltså enbart i databasen.
Sök på google eller aspin.com så ser du nog nåt exempel.
Jag har tyvärr inte koden kvar.

Men personligen föredrar jag att ladda upp bilderna i en katalog genom ett upload script och sedan enbart lägga in namnet på bilden i databasen. Jag tror detta är den bästa lösningen också.

Medlem sedan dec. 20025 871 inlägg
#10

Eftersom många anser att spara bilderna i en separat mapp och lagra filnamnet i databasen, så accepterar jag det som ett beslut. Tack för all hjälp, allesammans! :birp

Medlem sedan dec. 20025 871 inlägg
#11

Den här verkar inte funka:

  Set Upload = Server.CreateObject("Persits.Upload.1")
  Upload.Save(Server.MapPath("bilder\"))
  For Each File In Upload.Files
    objConn.Execute("INSERT INTO bilder(url,adressid) VALUES('" & File.FileName & "'," & Request.Querystring("id") & ")")
  Next

Upload.Name blir istället det värde som jag angav undar NAME="" på input-taggen. Men jag vill ju spara filnamnet som nyligan hade sparats... hur göra? :q

Medlem sedan mars 20015 287 inlägg
#12

Hm... nu är jag inte riktigt med på vad du skriver. Den kod du visar ska väl till att spara det namnet som den uppladdade filen fick?
Upload.Name eller File.Name lär väl ge dig, precis som du skriver namnet på "filrutan" i formuläret.

Jag tycker helt klart den kod du visar skall fungera.
(Däremot kanske ditt id inte uppfatts som ett tal.)

Medlem sedan dec. 20025 871 inlägg
#13

Set Upload = Server.CreateObject("Persits.Upload.1")
Upload.Save(Server.MapPath("bilder\"))

Hur gör jag då för att ta reda på filnamnen? :o

Medlem sedan apr. 20012 427 inlägg
#14

trexter skrev:

Varför svarar ni inte på hans fråga i stället för att fråga varför han vill ha svar? :q

It's the webForum way! :x

Medlem sedan apr. 20012 427 inlägg
#15

LeonL skrev:

Hur gör jag då för att ta reda på filnamnen? :o

När det gäller komponentspecifika frågor brukar det gå snabbare om man själv letar reda på svaret:

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

Medlem sedan dec. 20003 887 inlägg
#16

Lista filnamn...

Set objUpload = Server.CreateObject("Persits.Upload")
Set objDir = objUpload.Directory(Server.MapPath("/bilder") & "\*.*", SORTBY_TYPE)

For Each objFile in objDir
   Response.Write objFile.FileName &"<BR>"
Next
Medlem sedan dec. 20025 871 inlägg
#17

Jo så här gör jag ju:

  Set Upload = Server.CreateObject("Persits.Upload")
    Upload.Save(Server.MapPath("bilder"))
    
    For Each File In Upload.Files 
      Response.Write(File.Name & "<br>")
    Next

Problemet är dock att den bara skriver ut "bild1", och inte själva filnamnet. Så här ser input-taggen ut:
<input type="file" name="bild1">

Nu förstår ni varför jag frågar HÄR PÅ wF och varför "bild1" kommer fram...

Medlem sedan dec. 20025 871 inlägg
#18

red\ Glöm det :r

Medlem sedan dec. 20003 887 inlägg
#19

Nja, du använder dig utav Files Collection och inte av Directory. Nu har jag ingen aning om det gör någon skillnad.

Medlem sedan apr. 20012 427 inlägg
#20

Efter att ha letat i objektreferensen i ca 3,5 sekunder hittade jag följande:

http://www.aspupload.com/object_file.html#OriginalFileName

141 ms totalt · 3 externa anrop · v20260731065814-full.55e59744
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
138 ms — hämta tråd, inlägg och bilagor (db)