1

私が行ったデータベースからのコメントを表示したかったのですが、ユーザーがコメントをアップロードした場合はコメントの画像も追加したかったのですが、現在、画像をフォルダーに保存し、画像のパスはコメントの隣のデータベースにありますユーザーはコメント付きの画像を追加しましたが、画像が表示されておらず、画像のないコメントがある画像スペースも作成されています。コードは以下のとおりです

<?php
   include('../c_database.php');

   $queryAll = "SELECT ID, Username, Comments, time_added FROM comments ORDER BY ID DESC";

   $executeQuery = mysqli_query($dbc, $queryAll);

   while($row = mysqli_fetch_array($executeQuery)){

   echo '<div class="commentbox">';
   echo '<div class="comments">';
   echo '<fieldset class="comment">';
   echo '<legend>';
   echo $row['Username'];
   echo '</legend>';
   echo '<br>'; 
   echo '<br>'; 
   echo '<img src="'.$row['imagepath'].'" width="100px" height="100px"></img>';
   echo '&nbsp'; 
   echo $row['Comments']; 
   echo '<br>';
   echo '<br>';
   echo '<div class="commentdetails">';
   echo '<fieldset>';
   echo $row['time_added'];
   echo ' / '; 
   echo 'Comment ID: ';
   echo $row['ID'];  
   echo '</div>'; 
   echo '</fieldset>';
   echo '</div>';
   echo '<br>';
   echo '</div>';
}

?>

ユーザーがアップロードしたコメントのみに画像を表示するにはどうすればよいですか?

4

2 に答える 2

0

ユーザーがプロファイル画像を 1 つしか持っていない、またはアップロードできる場合は、ファイルをディレクトリにアップロードするときに、次のようにユーザー セッション ID を使用してファイルの名前を変更します$image_name = $_SESSION['user']id = 11.jpg

これで、画像を表示するときに、ユーザー ID を使用して画像を呼び出すことができます。

弱いアプローチですが、ユーザーが1枚の写真しかアップロードできないサイトを作成したことがありますが、うまくいきました。

あなたのコードでは、次のことができます

echo '<img src="uploads/$_SESSION['user'].jpg" width="100px" height="100px"></img>'

また echo '<img src="user.php?id=$id.jpg" width="100px" height="100px"></img>'

于 2012-11-24T13:33:31.117 に答える
0

クエリを見てください。SELECT ステートメントの imagepath を除いて、テーブルに必要なすべての列を指定しました。私の理解が正しければ、コメント テーブルにイメージパスがありますか? この場合は、次に行う必要があります: 代わりにecho '<img src="'.$row['imagepath'].'" width="100px" height="100px"></img>'; Do echo (!empty($row['imagepath'])) ? '<img src="'.$row['imagepath'].'" width="100px" height="100px"></img>' : '';.

于 2012-11-24T13:49:25.187 に答える