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 サイトの他の関連記事を参照してください。