2017-04-06 2 views
0

自分のユーザーのために自分のデータベースにテーブルを作成しました。このテーブルは、自分のページのプライベートメッセージ用にテーブルと一緒に使用したいものです。 私は自分のページを設定して、私のprivatテーブルの異なるmeassagesをリストアップするようにしました。これは、usr1とusr2という名前のメッセージスレッドの両方のメンバーを含んでいます。私のユーザテーブルには私のユーザ名とイメージカラムがあります。投稿の隣にユーザーのイメージを表示

私は、正しいユーザーからイメージを選択してからus2のイメージを選択できるように、usr1がusersテーブルのusernameと一致するイメージを選択しようとしました。 users.usernameとprivat.usr1をマッチングしようとする以外に、セッション名を使用しようとしたので、users.username = $ _SESSION ["navn"]とprivat.usr1 = $ _ SESSION ["navn"]と答えました。 ここにあります私のコード:私は今、USR1画像は、その後

$navnbillede = $besked["usr2"]; 
    $query = "SELECT billede FROM users, privat WHERE users.username=privat.usr2"; 
    if ($stmt = mysqli_prepare($conn, $query)) { 
    mysqli_stmt_execute($stmt); 
    mysqli_stmt_bind_result($stmt, $billede2); 
    while (mysqli_stmt_fetch($stmt)) { 
    $billede2 = $billede; 
    } 
    mysqli_stmt_close($stmt); 
    } 

を、次のようなコードを繰り返して次のthread.I内のすべてのメッセージに示されているよう

$navnbillede = $_SESSION['navn']; 
$query = "SELECT billede FROM users, privat WHERE users.username=privat.usr1"; 
if ($stmt = mysqli_prepare($conn, $query)) { 
mysqli_stmt_execute($stmt); 
mysqli_stmt_bind_result($stmt, $billede); 
while (mysqli_stmt_fetch($stmt)) { 
$billede = $billede; 
} 
mysqli_stmt_close($stmt); 
} 

これはちょっと働きそして私は、画像を設定しようこのように:

if ($_SESSION['navn'] == $besked["usr1"]) 
{ 
    $image = $billede; 
} 
if ($_SESSION['navn'] !== $besked["usr2"]) 
{ 
    $image = $billede2; 
} 

そして、私は、次のコマンドを実行します。

while($besked2 = mysqli_fetch_array($query2)) 
{ 
?> 
     <li><?php 

     echo '<img src="'.$image.'"style="max-width:100px;max-height:100px;"/>'; 

?> 
    <a style="text-decoration: none; font-weight: bold; color: white;" href="offentlig.php?id=<?php echo $besked2['usr1']; ?>"><?php echo $besked2['usr1']; ?></a> 
     skrev: </br> 
     <?php echo $besked2['besked']; ?><br/><br/> 
     <?php echo date('m/d/Y H:i:s' ,$besked2['tid']); ?></li> 
<?php 
} 

これは絶対にうまく動作しますが、それは実際には右の画像を表示することはありません。

参考のために私のbeskedこのようになります(とも機能している):

$query = mysqli_query($conn, 'select title, usr1, usr2 from privat where id="'.$id.'" and id2="1"'); 
$besked = mysqli_fetch_array($query); 

私はを使用してに探してみましたがに参加、しかしこれは、私は仕事が見つかりいずれか..

答えて

0

を行うcouldntの各チャットメッセージの横に正しい画像を表示するための実用的な解決策:

while($besked2 = mysqli_fetch_array($query2)) 
    { 
     $query = 'SELECT billede FROM users, privat WHERE privat.usr1=users.username AND id2='.$besked2["id2"].''; 
     if ($stmt = mysqli_prepare($conn, $query)) { 
     mysqli_stmt_execute($stmt); 
     mysqli_stmt_bind_result($stmt, $billede); 
     while (mysqli_stmt_fetch($stmt)) { 
     $billede = $billede; 
     } 
     mysqli_stmt_close($stmt); 
     } 
    ?> 
      <li><?php 

      echo '<img src="'.$billede.'"style="max-width:100px;max-height:100px;"/>'; 

    ?> 
関連する問題