2016-07-08 29 views
1

以下は、ファイルを含む画像の表示情報のコードですが、表示されません。理由はわかりません。みんな助けてください。php mysqlを使用して画像が表示されない

<?php 
     include('config/dbconnect.php'); 
     if(isset($_GET['id'])) 
     { 
      $id = $_GET['id']; 
      $sql = mysqli_query($con, "SELECT * FROM collage WHERE id = '$id'"); 
      while($row = mysqli_fetch_array($sql)) { 
        $name = $row['name']; 
        $content = $row['content']; 
        $size = $row['size']; 
        $type = $row['type']; 
        $date_upload = $row['date_upload']; 
        $file = $row['file']; 
      } 
     } 
?> 
<div class='body-content'> 
<div class='img-name-cont'><h3><?php echo $name; ?></h3></div> 
<div class='img-detail-cont'>upload: <?php echo $date_upload; ?><br>type: <?php echo $type; ?><br>size: <?php echo $size; ?>KB </div> 
<div class='img-file-cont'> 
<img src="img/collage/<?php echo $row['file'] ?>" style="width:130px; height:100%"></div> 
<div class='img-content-cont'><?php echo $content; ?></div> 
</div> 
+0

ビューページのソース - HTMLは正しいです –

+0

あなたは、コードインスペクタ?? PS内の任意のエラーコードを取得します:あなたのコードが 'した後、SQLインジェクション –

+0

により注入することができますか? <?php' add 'error_reporting(E_ALL); ini_set(' display_errors ' ($ con、WHERE id = '$ id'))または死ぬ(mysqli_error($ con));そしてエラーをチェックする –

答えて

1

ここでの問題は、「あなたのすべての変数はwhileループのローカルです」です。 whileループの外側ではアクセスできません。このコードを試してください。

<?php 
     include('config/dbconnect.php'); 
     if(isset($_GET['id'])) 
     { 
      $id = $_GET['id']; 
      $sql = mysqli_query($con, "SELECT * FROM collage WHERE id = '$id'"); 
      while($row = mysqli_fetch_array($sql)) { 
     ?> 

        <div class='body-content'> 
        <div class='img-name-cont'><h3><?php echo $row['name']; ?></h3></div> 
        <div class='img-detail-cont'>upload: <?php echo $row['date_upload']; ?><br>type: 
        <?php echo $row['type']; ?><br>size: <?php echo $row['size']; ?>KB </div> 
        <div class='img-file-cont'> 
        <img src="img/collage/<?php echo $row['file']; ?>" style="width:130px; height:100%"></div> 
        <div class='img-content-cont'><?php echo $row['content']; ?></div> 
        </div> 
     <?php 
      } 
     } 
?> 
+0

dulajありがとうございます。私はこれを試してみます。 – Ryan

0

Dulajサンジャヤで答えてねえすべてのvariableslocalはそうあなたがwhileの外を使用カントです。あなたのコードを使用したい場合は、2番目の、あなたは、ファイルの外部で使用される異なるvariables$rowのすべてのデータを取った後、なぜあなたはimageに同じ$fileを使用していない、あなたは$row['file'];

を使用していた理由を単に

としてこの行を置き換えます
<div class='img-file-cont'> 
        <img src="img/collage/<?php echo $file; ?>" style="width:130px; height:100%"></div> 
+0

mamta – Ryan

2

最初に、画像がコードによって実際に指し示されているかどうかを検査するためにinspectを使用します。それは実際の愛情が指されていないかもしれないということです。あなたのフォルダ構造は何ですか?

"style =" width:130px;高さ:100% ">

あなたのコードは大丈夫です、それはあなたのイメージパスの正しい文字列を返す場合など、長いファイル

0

を返しPHPのエコー$行[『ファイル』]としてecho $row['file']を確認してください。正しいファイル拡張子

+0

ありがとうございましたgraceth。 – Ryan

0

 
try this one :

first of all you have to check if your image path ok or not using this php function:

<?php $img=getimagesize($imagewithpath); if($img=="") { echo "there is no image ";} else{ ?> <img src="<?php echo $imagewithpath; ?>" style="width:130px; height:100%"> <?php } ?>
+0

あなたの提案をお寄せいただきありがとうございます。 – Ryan

関連する問題