0

単に、ページに表示されているデータベースから画像を取得しようとしています。

画像パスをblobとしてデータベースに保存してから、imgタグのsourceプロパティのフィールドをエコーし​​ようとしました。しかし、ランダムな文字が大量に表示され、画像が表示されません。以下は、画像を表示したいページのビューに表示されるものです。

<div id="club_pictures">
    <img id="pic_1" src="<?php echo $this->clubs['pic_1']; ?>" />
    <img id="pic_2" src="<?php echo $this->clubs['pic_2']; ?>" />
    <img id="pic_3" src="<?php echo $this->clubs['pic_3']; ?>" />
</div>

次に、ブラウザで[ソースの表示]をクリックすると、画像を表示したい正確なHTMLが表示されます。

ありがとう

リック

4

3 に答える 3

0

画像を HTML に直接埋め込むこともできます

$base64 = base64_encode($pictureBinary));
$image = '<img src="data:image/gif;base64,' . $base64 . '"  />';
echo $image;
于 2012-04-16T04:06:18.900 に答える
0

baseUrl ヘルパーを使用して、画像ファイルの絶対宣誓を行うべきだったことがわかりました。これをやるとすぐにうまくいきました!ZendFrameworkの画像が読み込まれないため[この投稿][1]。私の作業コードは次のようになります。

<img id="pic_1" src="<?php echo $this->baseUrl($this->clubs['pic_1']) ?>" />

みんな助けてくれてありがとう!

于 2012-04-16T23:20:48.027 に答える
0

データベースにブロブとして保存された画像パスがあります

これは矛盾です。データベース フィールドには、画像パスまたは画像のバイナリ データが含まれます。あなたの質問の残りの部分に基づいて、後者だと思います。

この方法でバイナリ データをページにエコーすることはできません。URL のパラメーターに基づいて適切な画像データを読み込み、適切なヘッダー (正しい MIME タイプを含む) を提供し、バイナリ データを (他の出力なしで) エコーする別のアクションまたは URL を作成する必要があります。HTML の例では、各画像のこのアクションへのパスをエコーし​​ます。探し回っている場合は、PHP でこれを行う方法を説明する例がたくさんあるはずです。

于 2012-04-15T22:19:32.933 に答える