2016-05-28 15 views
-2

データベースからのイメージをhtmlページに表示する必要があります。 イメージをPHPで表示するコードを書きましたが、イメージをHTMLに出力することはできません。イメージはHTMLで表示されませんが、PHPで動作します

<?php 
class Kep { 
    function proba(){ 
     $id=3; 
     $db = new PDO("mysql:host=localhost;dbname=nyarigyak;charset=utf8", 'root', ''); 
     $stmt = $db->prepare('select data, mime from kepek where kepek_id = ?'); 
     $stmt->execute(array($id)); 
     $stmt->bindColumn(1, $data, PDO::PARAM_LOB); 
     $stmt->bindColumn(2, $mimetype, PDO::PARAM_STR); 
     $ret = $stmt->fetch(PDO::FETCH_BOUND); 

     header('Content-Type: ' . $mimetype); 
     header('Content-Length: ' . strlen($data)); 
     return $data; 
     } 
    } 
?> 

<?php 
$g = new Kep(); 
echo $g->proba(); 
?> 

このコードは画像を表示して表示します。私はhtmlタグに入れても動作しません。 どうすれば動作させることができますか?

<?php 
class Kep { 
function proba(){ 
    $id=3; 
    $db = new PDO("mysql:host=localhost;dbname=nyarigyak;charset=utf8", 'root', ''); 
    $stmt = $db->prepare('select data, mime from kepek where kepek_id = ?'); 
    $stmt->execute(array($id)); 
    $stmt->bindColumn(1, $data, PDO::PARAM_LOB); 
    $stmt->bindColumn(2, $mimetype, PDO::PARAM_STR); 
    $ret = $stmt->fetch(PDO::FETCH_BOUND); 

    header('Content-Type: ' . $mimetype); 
    header('Content-Length: ' . strlen($data)); 
    return $data; 
    } 
} 
?> 
<html> 
<?php 
$g = new Kep(); 
echo $g->proba(); 
?> 
</html> 
+0

拡張子がhtmlのページ@Nemethでフルページ名にコメントしてください。よう:** example.html ** –

答えて

1

HTMLコードの途中に画像を配置することはできません。

(例えばimage.php)、別のphpファイルでデータベースの検索コードを入れて、それへのリンク:あなたが画像を直接埋め込むことを主張する場合

<img src="image.php?id=XYZ"> 

あなたの画像を表示するには、2つの方法があります。 this question and answersで説明されているように、base64エンコーディングを使用して行うことができます。

関連する問題