Heim  >  Artikel  >  Backend-Entwicklung  >  Wie zeige ich ein als MySQL-BLOB gespeichertes Bild zusammen mit anderen Inhalten an?

Wie zeige ich ein als MySQL-BLOB gespeichertes Bild zusammen mit anderen Inhalten an?

DDD
DDDOriginal
2024-10-21 06:24:02603Durchsuche

How to Display an Image Stored as a MySQL BLOB Along with Other Content?

Anzeigen eines in einem MySQL-BLOB gespeicherten Bildes

Beim Versuch, ein als BLOB in einer MySQL-Datenbank gespeichertes Bild mit dem bereitgestellten PHP anzuzeigen Code haben Benutzer ein Problem festgestellt, bei dem die Ausgabe von Text oder Inhalten vor oder nach dem Bild zu Anzeigefehlern führt. Dieser Artikel befasst sich mit diesem Problem und stellt eine Lösung vor, um zusätzliche Elemente neben dem Bild anzuzeigen.

Der ursprüngliche Code:

<code class="php">include("inc/library.php");

connectToDatabase();

$sql = "SELECT * FROM theBlogs WHERE ID = 1;";

$result = mysql_query($sql) or die(mysql_error());  
$row = mysql_fetch_array($result);

header("Content-type: image/jpeg");
echo $row['imageContent'];
$db->close();</code>

Versuche, den Bildinhalt direkt auf der Seite wiederzugeben, stoßen jedoch auf Probleme, wenn andere Inhalte davor oder danach ausgegeben werden.

Lösung

Das Problem entsteht, weil Browser jeden Text oder Inhalt außerhalb der Bilddaten als Teil davon betrachten das Bild. Um dieses Problem zu beheben, können die Bilddaten in Base64 konvertiert und in ein eingebettet werden. Tag.

<code class="php">echo '<img src="data:image/jpeg;base64,' . base64_encode($row['imageContent']) . '" />';
echo 'Hello world.';</code>

Diese Lösung konvertiert die Bilddaten in Base64 und platziert sie in einem Tag, der die korrekte Anzeige des Bildes ermöglicht und gleichzeitig die Ausgabe zusätzlicher Inhalte auf der Seite ermöglicht.

Hinweis: Dieser Ansatz funktioniert zwar, ist jedoch für Leistung und Caching nicht optimal. Es wird empfohlen, alternative Lösungen für die Anzeige von als BLOBs in MySQL-Datenbanken gespeicherten Bildern zu erkunden, beispielsweise die Verwendung von Caching-Mechanismen oder externen Bildservern.

Das obige ist der detaillierte Inhalt vonWie zeige ich ein als MySQL-BLOB gespeichertes Bild zusammen mit anderen Inhalten an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn