2016-09-13 9 views
0

でGridFSはなく、base64エンコードから画像を表示するためのいずれかの方法があり、ここでHTMLページへのGridFSに格納された画像を表示するために私のコードです。それは、通常のWebページの画像を表示することをお勧めビューへの$ im_arrayを渡すことは、HTMLイメージタグ

$conn = new MongoClient('SHLY_DBSERVER'); 
    $db = $conn->newdb; 
    $gridFS = $db->getGridFS('productImages'); 

     $image = $gridFS->find(); 
     $im_array=iterator_to_array($image); 


     return $im_array; 

..

  foreach ($im_array as $key => $value) 
      { 
      $imageFile = $value->getBytes(); 

      $img=base64_encode($imageFile); ?> 
    <img style="width:300px;margin-left: 5em" class="img-responsive" src="data:image/jpg;charset=utf8;base64,<?php echo $img ?>"/><br> 


    } 

のですか? 私はファイルシステムのストレージに行く必要がありますか?あなたのWebサーバは、クライアント側とサーバー側のキャッシュを管理するためだけ

+0

ポイントあなたのイメージタグをと$ _GETを経由していることをしたいファイルを渡します。そのPHPスクリプトは、グリッドFSから画像データを読み取り、正しいヘッダを出力し、画像の生のバイナリデータを送り出します。結果はより多くのWeb要求ですが、base64でエンコードされたデータのサイズは増加しません。また、PHPのスクリプトが適切なヘッダを送信してキャッシュするようにすることもできます。 –

+0

私に理解できるコードを表示できますか? –

+0

http://stackoverflow.com/questions/7793009/how-to-retrieve-images-from-mysql-database-and-display-in-an-html-tag、それは単に置き換える、MySQLを使用して、それを行う方法を示していますmysql dbからフェッチしてgridfsからフェッチします。それは本質的に同じことです。 –

答えて

0

画像、JS、CSSと添付ファイルについては、ファイルシステム内のファイルを保存する必要があります。 (SRCを使用して)PHPスクリプトに

関連する問題