2015-04-03 92 views
1

我的问题是,我想时间显示两个用户和订单之间的消息。 我nmanaged显示来自每个用户的信息,但它首先为用户显示乔治和用户Niklakis,因为它显示在下面的图片... enter image description here显示信息,以便通过时间

我要的是同时显示信息的命令按时间。 这是我的代码的一部分...

$query = "SELECT * FROM messages WHERE recip='$view' ORDER BY time DESC"; 
     $query2 = "SELECT * FROM messages WHERE recip='$username' ORDER BY time DESC"; 
     $result = queryMysql($query); 
     $result2 = queryMysql($query2); 
     $num = mysql_num_rows($result); 
     $num2 = mysql_num_rows($result2); 

     for ($j = 0 ; $j < $num ; ++$j) 
     { 
      $row = mysql_fetch_row($result); 

      if ($row[3] == 0 || $row[1] == $username || $row[2] == $username) 
      { 
       echo date('M jS \'y g:ia:', $row[4]); 
       echo " <a href='messages.php?view=$row[1]'>$row[1]</a> "; 

       if ($row[3] == 0) 
        echo "wrote: &quot;$row[5]&quot; "; 
       else echo "private message: <span class='whisper'>" . 
         "&quot;$row[5]&quot;</span> "; 

       if ($row[2] == $username) 
        echo "[<a href='messages.php?view=$view" ."&erase=$row[0]'>erase</a>]"; 

       echo "<br>"; 
      } 
     } 
     for ($j = 0 ; $j < $num2 ; ++$j) 
     { 
      $row2 = mysql_fetch_row($result2); 

      if ($row2[3] == 0 || $row2[1] == $username || $row2[2] == $username) 
      { 
       echo date('M jS \'y g:ia:', $row2[4]); 
       echo " <a href='messages.php?view=$row2[1]'>$row2[1]</a> "; 

       if ($row2[3] == 0) 
        echo "wrote: &quot;$row2[5]&quot; "; 
       else echo "private message: <span class='whisper'>" . 
         "&quot;$row2[5]&quot;</span> "; 

       if ($row2[2] == $username) 
        echo "[<a href='messages.php?view=$view" ."&erase=$row2[0]'>erase</a>]"; 

       echo "<br>"; 
      } 
     } 

我可以理解,我的问题是因为我有循环两个不同,我大概只ONE需要循环做这项工作。但我试过了,我可以找到办法做到这一点。 你能帮忙吗? 谢谢。

+0

是'$ view = $ username'? – 2015-04-03 15:45:19

+0

@MySQLRockstar不,它是不同的。 – DogFace 2015-04-03 15:46:13

回答

2

您可以使用两种查询结果相同的代码(尖的未来:PHP支持类似的功能:D尝试一下)和您的查询具有相同的结构,你为什么不只是fecht一切为用户条目并对其进行排序?你试过这个吗?

$query = "SELECT * FROM messages WHERE (recip='$username' AND auth='$view') OR (recip='$view' AND auth='$username') ORDER BY time DESC"; 
+0

大声笑我知道这是一个容易的错误:P ...谢谢 – DogFace 2015-04-03 16:12:33

+0

很高兴帮助:) – AdamM 2015-04-03 16:32:33