Mailinglisten-Archive |
Am 19 Jun 99, schrieb Lars Frasseck zu "[php] blob": > wer kann mir sagen > wie ich über ein Binary Large Object Zugriff von meiner Seite auf die > dahinter laufende Datenbank nehemen kann. Was genau hast Du womit vor? Arbeitest Du auf infosoc mit MySQL? Was für Dateien sind das? Im Prinzip machst Du mit BLOBs nix anderes als mit anderen Feldtypen. Ein File-Upload sieht im Formular etwas anders aus. Z.B.: <FORM ACTION="<?echo $PHP_SELF?>" METHOD="POST" ENCTYPE="multipart/form-data"> <INPUT TYPE="File" NAME="datei" SIZE=30> <INPUT TYPE="Submit" NAME="cmd" VALUE="Speichern"> </FORM> Die Datei liegt anschliessend in einem temporären Verzeichnis (wahrscheinlich /tmp, kannst Du in der php.ini mit upload_tmp_dir auch einstellen). Auf die Datei kannst Du einfach über deren Namen (hier in $datei) zugreifen: if (file_exists($datei)) { $fsize=filesize($datei); $datei2=addslashes(fread(fopen($datei,"r"),$fsize)); mysql_db_query("db","update table set datei='$datei2', typ='$typ' where id=$id"); unlink($datei); } Wenn Du auf die Datei wieder zugreiffen willst geht das über ein Skript. Etwa datei.php?id=5: $d=mysql_fetch_array(mysql_db_query("db","select datei from table where id=$id")); $typ=$d['typ']; header("Content-type: $typ"); echo $d['bild']; Wenn Du weisst, um was für einen Dateityp es sich handeln wird oder Du ihn ermitteln kannst, ist es sinnvoll ihn anzugeben, weil der Benutzer u.U. einen Viewer dafür konfiguriert hat. Ansonsten lass' die Stellen mit $typ weg oder frag' ihn auch im Formular ab. Gruß, Reiner -- NETZKONZEPTE - http://kukulies.de
php::bar PHP Wiki - Listenarchive