phpbar.de logo

Mailinglisten-Archive

Re: Bilder in Datenbank ablegen
Archiv Mailingliste mysql-de

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Bilder in Datenbank ablegen



Oliver Artelt wrote:
> >Wie willst Du ein SELECT einer Datenbank in einem Proxy speichern?
> Es ging nur um Images, die als eigenstaendiges Dokument vom HTTP-Server
> angebeoten werden (Grafik oder Download...).
Also, wenn Du einen Filenamen in der DB speicherst und in einer
dynamischen Seite einen Verweis mit IMG SRC machst, bei dem zwar der
SRC-Wert aus der DB kommt, aber auf eine Datei im FS zeigt.

> Und um die Frage: Sollen die Bilder dann vom FS verwaltet werden
> (uebrigens interessante These vom 'php-Rasmus': Ein FS stellt ein optimiertes
> BLOB-Speichersystem dar) oder komplett in der DB belassen. Um die Sache zu
Ich denke, PHP-Rasmus liegt da richtig, weil ich mir die Datenbank nicht
so performant wie das FS vorstellen kann. Aus dem FS kann ich (als
Apache) die Datei so ziehen, in der Datenbank muß ich erstmal einen
Thread forken, SQL analysieren, Daten lokalisieren.

Achtung, nicht genauer durchdachter Output, möglicherweise Schwachsinn:
---
Wie wäre eine MySQL-Erweiterung: Ein Datentyp "FILENAME", der auf eine
Datei in einem DMBS-weiten Verzeichnis verweist. MySQL könnte die Datei
dann löschen, wenn ein entsprechendes Feld gelöscht wird.

Probleme: Das Verzeichnis sollte möglichst exklusiv von MySQL verwaltet
werden, muß aber auch Zugriffe z.B. vom Webserver erlauben. Zusätzlich
könnten wir hier vom Unix-Rechtesystem her Probleme kriegen. Die
Dateinamen müssten außerdem von MySQL vergeben werden, um in dem Pool
eine datenbankübergreifende Eindeutigkeit zu gewährleisten. Kurz, die
BLOBs als eigenen Eintrag im FS sichern, in einer Form, die _auch_ ein
direktes Auslesen aus dem FS zuläßt.
---

> verallgemeinern, koennte man das als zwei Sonderfaelle betrachten und
> vielleicht einen Proxyserver als Kriterium verwenden, auch wenn man ihn etwas
> zweckentfremdet.
Sorry, ich verstehe nicht, was genau Du meinst...

Aber wie stehts eigentlich mit den SELECT CACHEDs?

> Noe, gluecklicherweise laeuft ein HTTP-Server (zumindest Apache) die URI von
> links nach rechts ab, bis er ein vorhandendes Dokument findet, dessen Mimetype
> / Modulextension er versteht:
> <IMG SRC=imagesender.php3/myimage.gif>

Ok, also Du würdest die Argumente im Pfadteil (so hieß das bei den CGIs)
an PHP übergeben. Dann sieht das für den Proxy aus wie eine Datei. Das
scheitert dann doch, wenn ich einen Aufruf <IMG
SRC="gimmeimage.php3?id=123"> habe, oder?

> Der Browser benennt den Download als myimage.gif (rechts nach links).
Es geht ja nicht um den Download, sondern um den Proxy. Aber solange der
den vollen Pfad sieht (siehe Abschnitt oben), ist das ok.

Bei der ganzen Proxysache sollte man dann aber beachten, daß immer noch
Daten geliefert werden können, die so nicht mehr in der DB existieren.

Matthias
-- 
   w e b f a c t o r y | matthias pigulla
 
      am wichelshof 10   fon 0177-6932300
      53111 bonn         fax 0228- 655656
      www.webfactory.de  mp_(at)_webfactory.de


Home | Main Index | Thread Index

php::bar PHP Wiki   -   Listenarchive