Bilder aus Mysql auf Website

A

A&e

Aktives Mitglied
Thread Starter
Dabei seit
31.01.2004
Beiträge
591
Reaktionspunkte
0
Nachdem ich´s in mehreren PHP Foren probiert habe, und dort keiner imstande ist, mir zu helfen, außßer wichtigtuerisch herumzureden und blöd zu fragen, wie ich denn soetwas machen kann, die Bilder nämlich in BLOB zu speichern, probier ich´s nun hier in meinem Mac Forum und weiß, dass mir hier geholfen wird:

Ganz simples Problem und Anfängerfrage:
Ich habe eine Mysql Datenbank und dort meine Bilder in BLOB gespeichert. Da ich nun an Kapazitätsgrenzen stoße, will ich in Zukunft die Bilder in einem Verzeichnis am Server abspeichern.
Meine Frage:
1.: Ich habe nun das Verzeichnis "Bilder" am Server erstellt.
2.: Ich habe eine Spalte in Mysql, wo die Namen der Bilder drin stehen.
Wie krieg ich es nun mittels PHP zusammen, dass wenn ich die Seite aufrufe, dieses Bild von dem ich den Namen in Mysql habe und das im Verzeichnis "Bilder" liegt, angezeigt wird.
 
Hallo, das Bilder in BLOB's schlecht aufgehoben sind ist eine gern getätigte pauschal-Aussage. Für große Mengen richtig, für kleine - wie Du schon sagst - falsch. Man kann es durchaus bis zu einem gewissen Limit tun ;)

Wie kommst Du an die Bilder ?

(1) Name des Bildes aus mysql-Spalte sei $name per SQL ermittelt
Hier würde ich evtl. durchaus Unterpfade erlauben, um nicht nachher ein BILDER-Verzeichnis mit 100000 Bidlern zu haben. Den reinen dateinamen erhältst Du dann per

$file=basname($name);

sehr einfach.

(2) Wo liegt das Bildverzeichnis?
Es muß - logisch - per Web und per Filesystem erreichbar sein. Beide Pfadangaben differieren, wegen unterschiedlichem root-Verzeichnis. Fürs filesystem z.B.:

/Library/WebServer/Documents/bilder/

entspräche für den Web-Browser dann:

http://DeinRechner/bilder/

speichere das in einer Variablen $pfad="http://DeinRechner/bilder/";

und mit

$bildurl=$pfad.$name;

fügst Du beides zusammen und kannst dort hin verlinken oder das Bild pre tag einbinden.
 
Vielen Dank, ich werd das gleich probieren. Aber andere Frage: Meinst Du, ich kann die Bilder auch als BLOB lassen? Es sind ca. 5000 Bilder. Und da man ja aus BLOB keine Thumbnails machen kann, sind die Ladezeiten natürlich ein Alptraum. Deshalb meine Entscheidung fürs Verzeichnis.
 
Das hängt vor allem vom Speicherverbrauch der Bilder ab! Bei meiner D70 wären das 5000 * 6MB, das würd ich lassen! Der Nachteil bei BLOBs ist, daß jeder Transfer im transaction.log protokolliert wird. Da bringt man jeden Server aus dem Gleichgewicht! Ich denke die Trennung in Metadaten->Mysql und Bilddaten->filesystem ist sehr sinnvoll. Bei 5000 Icons oder thumbs würd ich das evtl. anders sehen.
 
Zurück
Oben Unten