@WeBBeW

Система сообщений.Как сделать чтобы у user_one выводились свои сообщения которые он писал,а у user_two свои?

<?$result_message_send = mysqli_query($connect,"SELECT * FROM `message` WHERE 
        `user_one`='$idsheet_message_id' AND `user_two`='$get_to'");
	while ($row_message = mysqli_fetch_assoc($result_message_send)) {
		echo "<nobr>Вы - ".$row_message['message']."<br>Он - ".$row_message['message']."</nobr><br>";
}?>

Если не понятно объяснил то скажите
  • Вопрос задан
  • 107 просмотров
Решения вопроса 1
OKyJIucT
@OKyJIucT
Sunshine reggae
Если я правильно все понял и у вас есть три поля (важных для вопроса) - message, user_one, user_two, причем если это сообщение от user_one, то поле user_two = null. А значит решение будет выглядеть так

while ($row_message = mysqli_fetch_assoc($result_message_send)) {
    if($row_message['user_one']) {
        echo "<nobr>Вы - " . $row_message['message'] . "<br></nobr>";
    } else {
        echo "<nobr>Он - " . $row_message['message'] . "<br></nobr>";
    }
}


А в целом, я бы советовал вам внести коррективы в таблицу - убрать поле user_two, а user_one заменить на user_id, и сделать таблицу со списком юзеров. Потому как если у вас будет 50 юзеров, вам придется добавлять под каждого еще одно поле в таблице и менять каждый раз код вывода, а так у вас будет храниться список сообщений с айди автора из таблицы с пользователями.

Если планируете сделать диалоги между разными пользователями (либо приватные сообщения в общем чате), то надо будет еще одну таблицу сделать с полями id, user_1, user_2, и в таблицу с сообщениями добавить поле dialog_id, чтобы понимать, какое сообщение к какому диалогу относится. А в таблице с диалогами вы будете видеть участников диалога. Ну это так, мысли вслух.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы