Hallo,
ich möchte in php - Scripts Bilder, die in der MySQL Datenbank gespeichert sind, im Browser (FF ) ansehen. SQL Verbindung, Abfragen etc., das paßt auch alles prima und gibt keine Probleme.
Aber: Man muß dem FF ja sagen, daß es sich nun um ein Bild handelt, was er aus der Datenbank darstellen soll, statt Text; dies geschieht wohl mit
header('content-type:image/jpeg')
oder analog gif etc.
Sobald ich nun das php Script aufrufe - s. Codebeispiel - fragt mich FF, ob und wo ich die Datei speichern möchte. Natürlich will ich das nicht. - Die Anzeige von jpeg/gifs etc., die direkt aus dem localhost Verzeichnis stammen, oder verlinkt mit anderen Sites im Web, werden korrekt dargestellt; der FF kann´s also.
$result2 = mysql_query($frage2) ; if (!$result2) { die('ungültige Abfrage : ' . mysql_error()) ; } $row2 = mysql_fetch_row($result2) ; $data = mysql_result($result2, 0, "bin-data") ; $type = mysql_result($result2, 0, "filetype") ; // header('Content-type: $type'); echo $row2[0]; echo $row2[1]; echo $row2[5]; echo $type ; echo $data ; Achtung: Nur Auszug ! MySQL Verbindung etc. gehen ja ....
Der "Bösewicht" ist also die Header Anweisung. Klammere ich diese aus, bekomme ich den Feldinhalt binär dargestellt. Lasse ich´s drin, will FF das Script eben downloaden + speichern.
Irgendwo muß ich also php ( Apache ? ) noch irgendwas sagen. Nur was und wo ?
Installiert hab ich den Apache Server, MySQL und php5 ( phpinfo() sagt 5.3.2 )
Höre gern,
Gruß ascie