2016-05-19 5 views
2

何私は、送信者とレシーバここチャットルームメッセージ切り抜いた背景色が

の間に切り抜いた背景色を持つことになりますメッセージを作成されてやりたいことは、ここに私のコード

<?php 

    include '../config.php'; 
    include'login.php'; 

    $username = $_SESSION['username']; 

    $msg = $_REQUEST['msg']; 

    $sql = mysqli_query($connection,"INSERT INTO logs(`username`, `msg`)VALUES('$username', '$msg')"); 
    $sql1= "SELECT * FROM logs ORDER by id ASC "; 

    $result1 = mysqli_query($connection,$sql1); 

    if ($_SESSION['username'] == $username) 
    $color = 'red'; 
    else 
    $color = 'purple'; 

    while($extract = mysqli_fetch_array($result1)){ 

    echo " 
    <div class='left-wrap-message' style='background-color:$color;'> 
    <span class = 'username'>". $extract['username']. 
    "</span><span class='msg'> : " . $extract['msg']. "</span></div><br>"; 
    } 

?> 

ですログロード用のファイルのメッセージアウト

<?php 
    include '../config.php'; 
    include'login.php'; 

    $username = $_SESSION['username']; 

    $sql1= "SELECT * FROM logs ORDER by id ASC"; 

    $result1 = mysqli_query($connection,$sql1); 


if ($_SESSION['username'] == $username) 
    $color = 'red'; 
else 
    $color = 'purple'; 


while($extract = mysqli_fetch_array($result1)){ 

echo "<div class='left-wrap-message' style='background-color:$color;'> 
<span class = 'username'>". $extract['username']. "</span> 
<span class='msg'> : " . $extract['msg']. "</span></div><br>"; 
} 

?>

何か混乱している?なぜそれが仕事をしないのですか

+0

まさに言っエラーチェック? –

+0

エラーはありません~~すべての背景色は赤ですそれは送信者と受信者であることを確認できません – nonstop328

+0

メッセージループ内ではユーザー名**を確認する必要があります。 – Peon

答えて

2

、これは動作するはずです:

PHP

<?php 

    include '../config.php'; 
    include'login.php'; 

    $username = $_SESSION['username']; 
    $msg = $_REQUEST['msg']; 

    $sql = mysqli_query($connection,"INSERT INTO logs(`username`, `msg`)VALUES('$username', '$msg')"); 
    $sql1= "SELECT * FROM logs ORDER by id ASC "; 

    $result1 = mysqli_query($connection,$sql1); 

    while($extract = mysqli_fetch_array($result1)){ 
    $color = ($extract['username'] == $username) ? 'red' : 'purple'; 
    $position = ($extract['username'] == $username) ? 'left' : 'right'; 
    echo " 
    <div class='" . $position . "-wrap-message' style='background-color:$color;'> 
    <span class = 'username'>". $extract['username']. 
    "</span><span class='msg'> : " . $extract['msg']. "</span></div><br>"; 
    } 

?> 
+0

ワウTHXの仕事!しかし、もし私がそれを左右にしたいのなら、どうすればいいのですか? – nonstop328

+0

@ nonstop328私はポジションのコードを編集しました;) –

+0

私のために左と右の仕事はありませんでした。 – nonstop328

1

あなたは$username = $_SESSION['username'];を設定していますので、if/elseステートメントに到達すると、常にtrueと解決されます。

if/elseをwhileの中に入れ、行のユーザー名と$ usernameを比較する必要があります。あなたは、ループ内のエキスのユーザ名と$ユーザ名を比較する必要が