ホームページ  >  記事  >  データベース  >  PHP で MySQL データベースの最後の 5 つの BLOB イメージを表示するにはどうすればよいですか?

PHP で MySQL データベースの最後の 5 つの BLOB イメージを表示するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-30 15:15:03882ブラウズ

How to Display the Last Five BLOB Images from a MySQL Database in PHP?

MySQL データベースからの BLOB イメージの表示

質問の中で、MySQL データベース テーブルにアップロードされた最後の 5 つの BLOB イメージを表示することに興味があると表明しました。 「ストア」という名前。 PHP とデータベース処理の初心者にとって、この作業は困難に思えるかもしれません。管理しやすい手順に分割してみましょう。

MySQL への画像の保存

データベースに画像を保存するコードは機能しているようです。 file_get_contents() を使用してアップロードされたファイルのバイナリ データを読み取り、addslashes() を使用して特殊文字をエスケープします。次に、このデータをイメージ名とサイズとともに「ストア」テーブルに挿入します。

最後の 5 つのイメージの取得

最後にアップロードされた 5 つのイメージを取得するには、次のような MySQL クエリを使用できます。

<code class="sql">SELECT id, image FROM store ORDER BY id DESC LIMIT 5</code>

このクエリは、結果を id 列の降順に並べ替え、挿入された最後の 5 つの画像を効果的に取得します。

画像

Web ページに画像を表示するには、次の PHP コードを使用できます。

<code class="php">$result = mysqli_query($db, $sql); // Execute the SQL query
while ($row = mysqli_fetch_assoc($result)) { // Iterate over the result rows
    echo "<img src='get.php?id=" . $row['id'] . "' />"; // Display the image using the `get.php` script
}</code>

上記のコードは、while ループを使用して結果の行を反復処理し、各行の img タグを表示します。画像のソースは get.php に設定されます。これは、データベースから実際の画像データを取得する役割を担う別の PHP スクリプトです。

get.php Script

get.php スクリプトは次のようになります。

<code class="php">$id = addslashes($_GET['id']); // Get the image ID from the URL
$image = mysqli_query($db, "SELECT image FROM store WHERE id=$id"); // Fetch the image data
$image = mysqli_fetch_assoc($image); // Retrieve the image data as an array
header("Content-type: image/jpeg"); // Set the content type for the image
echo $image['image']; // Output the binary image data</code>

このスクリプトは、指定された ID の画像データを取得し、正しい MIME タイプで出力し、ブラウザーが画像をレンダリングできるようにします。

結論

これらの手順に従うことで、PHP で MySQL データベースにアップロードされた最後の 5 つのイメージのギャラリーを正常に表示できます。テーブル名と列名に応じて SQL クエリと PHP コードを必ず調整し、特に大きな画像ファイルを扱う場合は、パフォーマンスのためにコードを最適化することを検討してください。

以上がPHP で MySQL データベースの最後の 5 つの BLOB イメージを表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。