2017-10-11 22 views
-1

基本的にgetImageのリンクに行くと、データベースからの画像が表示されますが、画像を表示する.phpファイルで使用すると画像が表示されますカードに合わせてサイズを変更すると、表示されず、alt(アバター)が表示されます。getImage.phpの画像はimg srcに表示されません

その後
<center> 
<img src="getImage.php" class="w3-circle" style="position:absolute; bottom:-20%; left:35.5%; width:30%" alt="Avatar"> 
</center> 

getImage.phpのためのコード:

<?php 
session_start(); 
require './Database.php'; 

// do some validation here to ensure id is safe 

$sql = "SELECT register.FULLNAME, register.IMAGE, gameData.NBA_SCORE FROM register inner join gameData on register.ID = gameData.ID WHERE NBA_SCORE = (select max(NEW_SCORE) from gameData)"; 
$result = mysqli_query($con, $sql); 
$row = mysqli_fetch_assoc($result); 
echo "<img src='".$row['IMAGE']."'>"; 
?> 

私がやっている何に何か?

+0

なぜあなたは保存されていますデータベースの画像ですか? _files_は_filesystemに保存されなければならない_...あなたの 'img'タグを繰り返しています –

+0

残念ながら、これは人々がそこに画像を登録しアップロードできるウェブサイトであることを忘れてしまい、アップロードされた画像はデータベースに保存されます必要に応じて呼び出されます。 – bbnjo8

答えて

1

問題

HTMLがjpgまたはPNGなどの有効なイメージファイルを取得するためにtrysが、コンテンツ<img src="...">でPHP /テキストファイルを取得します。あなたが画像と出力画像ファイルデータへのPHPファイルのコンテンツタイプを変更する必要が

ソリューション

header("Content-Type: image/jpeg");//or image/png 
echo file_get_contents("$imagepath");//file path not url!!! 

コード

<?php 
    session_start(); 
    require './Database.php'; 

    header("Content-Type: image/jpeg");  

    // do some validation here to ensure id is safe 

    $sql = "SELECT register.FULLNAME, register.IMAGE, gameData.NBA_SCORE FROM register inner join gameData on register.ID = gameData.ID WHERE NBA_SCORE = (select max(NEW_SCORE) from gameData)"; 
    $result = mysqli_query($con, $sql); 
    $row = mysqli_fetch_assoc($result); 
    $path = $row['IMAGE'];//Maybe you need to change this if you only save an url in the database 
    echo file_get_contents($path); 

?> 
+1

それは魅力的に機能しました!これを分析して、ヘッダーが間違いなく助けになったと思います。そして、今、私は$パスを勉強します。ありがとう!!! – bbnjo8

+0

ええ、システム上のファイルにファイルデータを保存し、データベースにパスを保存する必要があります。変更を加えずに上記のコードを使用することができます。 –