Vielleicht weiß es ja einer...
wie lese ich Bilder aus meiner MYSQL-Datenbank per PHP-Datei.
Ich bekomme immer nur den binären Code ausgegeben. Also ein Zahlen- und Buchstabenkuddelmuddel.
Hier mein Quellcode:
<html>
<head>
</head>
<?PHP
$verbindung = mysql_pconnect("xx","xx","xx");
mysql_select_db("personal", $verbindung);
$sql = "SELECT * from mitarbeiter order by name";
$ergebnis = mysql_query($sql, $verbindung);
while($row = mysql_fetch_object($ergebnis))
{
echo "<table width=100% border=1>";
echo "<tr>";
echo "<a name="$row->id">";
echo "<td width=10%><b>Name</b></td><td width=60%>$row->vorname $row->name<br></td>";
echo "</tr><tr>";
echo "<td><b>Bild</b></td><td>$row->bild<br></td>";
echo "</tr>";
echo "</table><br>";
}
mysql_free_result($ergebnis);
mysql_close($verbindung);
?>
</body>
</html>
Kann mir jemand den Befehl erklären? Bin aus anderen Foren nicht schlau geworden. Danke...
Hallo
Am besten du machst ein extra script z.b. bild.php
dort muß rein:
header("Content-type: Image/jpeg");
imagejpeg($bild);
dieses script bindest du über den img tag ein:
<img src="bild.php"> ein.
sollte gehen. 😃
MFG
Also das raff ich leider noch nicht so ganz. :-(
hab also bis jetzt ne PHP-Datei mit folgendem Inhalt:
<?PHP
header("Content-type: Image/jpeg");
imagejpeg($Bild);
?>
und meine PHP-Abfrage-Datei in welcher einfach nur der Name und das Foto aller Personen angezeigt werden sollen:
<html>
<?PHP
$verbindung = mysql_pconnect("xx","xx","xx");
mysql_select_db("Personal", $verbindung);
$sql = "SELECT * from mitarbeiter order by Name";
$ergebnis = mysql_query($sql, $verbindung);
while($row = mysql_fetch_object($ergebnis))
{
echo "<table width=100% border=1>";
echo "<tr>";
echo "<a name="$row->id">";
echo "<td width=10%><b>Name</b></td><td width=60%>$row->Vorname $row->Name<br></td>";
echo "<td><b>Bild</b></td><td>$row-><img src="bild.php"></td>";
echo "</tr>";
echo "</table><br>";
}
mysql_free_result($ergebnis);
mysql_close($verbindung);
?>
</body>
</html>
Das kann doch so nicht funktionieren?
Bitte um Hilfe für ganz Blöde... :o
Upps da steht natürlich kein Bild, sondern der img src TAG
Hallo wersi77,
offenbar werden die Bilder in einem BLOB Feld als Binärdaten direkt gespeichert. Du musst also für die Ausgabe des Bildes den Header switchen, da die Informationen sonst als Textdaten angezeigt werden (=> Gewirr aus Zahlen und Buchstaben). Der Tipp von Boonkerz war richtig. Du findest das in einem ausführlichen Beispiel unter http://www.phpbuilder.com/columns/florian19991014.php3?page=3.
Noch ne Anmerkung: das direkte Speichern von Bilddaten in einer Datenbank ist meist nicht sinnvoll. Es gibt da ein paar (wenige) Infos unter http://www.dclp-faq.de/q/q-db-blob.html.
Hoffe, das hilft Dir weiter!
Gruß
Thomas