好的,所以我在这里做一个小查询,检索来自两个用户ID的所有消息,然后将它们回显到浏览器。这一切都运行良好,它回应了与发送日期相关的消息。
但是我现在想要完成两个查询并在日期中回应它们。因此,我将所有具有匹配的发件人ID和接收者ID的行拉入,然后我需要执行相同的查询,但ID会反转。所以反过来我会抓住两个用户的所有对话。然后我想按照日期的顺序将它们反映到浏览器中,这样他们的谈话就会对他们有意义。
这是我目前的操作,它给了我想要的结果。但是我需要反过来引入其他查询。
$query = "SELECT * FROM msgs
WHERE recipientid = '{$_SESSION['rider_id']}'
AND authorid = '{$riderid}' ORDER BY datesent DESC";
$result = mysqli_query($connection, $query);
//If an error with the query, report the error
if (!$result) {
echo "Error with the database call to grab your message author.";
}
while($row = mysqli_fetch_assoc($result)) {
$msgid = $row['id'];
$authorid = $row['authorid'];
$datesent = $row['datesent'];
$message = $row['message'];
?>
<div class="msgcontainer">
<li>
<img alt="<?php echo $authorrider['ridertag']; ?>"
class="pimg" src="<?php echo $authorrider['profileimg']; ?>">
<div class="globalfont"><?php echo $message; ?></div>
</li>
</div>
<?php
}
感谢任何帮助。
答案 0 :(得分:0)
有些人应该这样做:
SELECT *
FROM msgs
WHERE (recipientid = '{$_SESSION['rider_id']}' AND authorid = '{$riderid}')
OR (authorid = '{$_SESSION['rider_id']}' AND recipientid = '{$riderid}')
ORDER BY datesent DESC
这是未经测试的,但我非常有信心它应该适合该法案。