Grafikdateien aus einem BLOB Feld anzeigen
Uhfe
- php
Hallo Forum,
ich würde gerne gescannte Grafiken in einer MySQL Datenbank ablegen -als BLOB- und dann ggf. im Intranet abbilden. Der erste Teil ist einfach. Geht zum Beispiel easy mit phpmyadmin. Aber wie kann ich die Grafiken denn im Browser ansehen?
Grüße
Uhfe
Hallo,
erstell dir zum Beispiel eine Image-PHP die das Bild ausließt und dann als GIF- oder JPEG an den Browser sendet.
Die PHP-Datei bindest du dann wie ein Bild an:
<img src="image.php?bild=12345" />
cu Benedikt Loepp
hi,
ich würde gerne gescannte Grafiken in einer MySQL Datenbank ablegen -als BLOB- und dann ggf. im Intranet abbilden
generelle anmerkung zur methode:
ich halte das für keine gute idee.
ein komplettes bild aus der datenbank zu holen, erzeugt massive serverlast auf dem rechner, auf dem die db läuft.
für solche grossen dateien wie bilder ist das dateisystem des servers idR der bessere ablageort.
die 'links', wo die bilder im dateisystem zu finden sind, kannst du natürlich ohne probleme in der DB ablegen. aber bilder gehören dort wirklich nicht rein.
gruss,
wahsaga
Hallo,
da würd ich wahsaga allerdings unabhängig von meiner anderen Antwort zustimmen - ich persönlich speichere sämtliche Bilder, auch die meiner Bilder-Galerien über mein CMS - im Dateisystem und nur den Namen in der DB.
Lässt sich meiner Meinung nach auch einfacher handhaben.
cu Benedikt Loepp
Hallo Benedikt,
und wie stellst Du sicher, dass nur der autorisierte Besucher das Bild ausgeliefert bekommt? Kopierst Du es als "selbstlöschendes File" oder Sessionvariable vorher einmal um?
Man könnte doch sicher auch temporäre Links im Dateisystem erzeugen, die nach dem Aufruf wieder verschwinden. SingleUseLinks sozusagen. Wäre doch mal ne nette Ergänzung für Linux.
Grüße
Tom
Hallo,
und wie stellst Du sicher, dass nur der autorisierte Besucher das Bild ausgeliefert bekommt? Kopierst Du es als "selbstlöschendes File" oder Sessionvariable vorher einmal um?
Davon gehe ich bei einer öffentlich Website oder Bildergalerie ja nicht aus, oder???
Falls soetwas intern sein sollte - wäre es mit DB sicherer - aber eine image.php kann man genau gut aufrufen wie ein xyz.gif
Höchstens ein wenig mehr Aufwand wenn da ne ID hintendranhängt.
cu Benedikt Loepp
Hi Tom
und wie stellst Du sicher, dass nur der autorisierte Besucher das Bild ausgeliefert bekommt? Kopierst Du es als "selbstlöschendes File" oder Sessionvariable vorher einmal um?
Stell die Bilder eben nicht unterhalb vom Webroot hin.
Man könnte doch sicher auch temporäre Links im Dateisystem erzeugen, die nach dem Aufruf wieder verschwinden. SingleUseLinks sozusagen. Wäre doch mal ne nette Ergänzung für Linux.
Ehm, wozu? Du legst die Bilder einfach in einen Bereich, wo normal per Web nicht zugegriffen werden kann und auch direkt nur vom Script. Das Script muss dann eben sicherstellen, dass nur "gute" das Bild ausgeliefert kriegen, genauso wie wenn es das Bild aus der Datenbank holt.
Gruss Daniela