Как обработать удаление в системе обмена сообщениями?

Я создал внутреннюю систему обмена сообщениями на основе базы данных MySQL. В моей структуре БД есть таблица для сообщений, в которой каждое сообщение имеет отправителя user_id и получателя user_id. Входящий почтовый ящик любого пользователя может заполняться в соответствии с их собственным отношением идентификатора в качестве получателя в таблице сообщений. Моя проблема заключается в том, когда я пытаюсь удалить любое сообщение, чтобы оно исчезло как у конечного отправителя & получатель. Так есть ли альтернативное решение, в котором сообщение удаляется только от того пользователя, который выполнил операцию удаления.

Вот моя структура таблицы для таблицы сообщений:

введите описание изображения здесь

2

Решение

Добавьте еще два поля в таблицу БД:

deleted_by_sender

deleted_by_receiver

Что с этим делать?

Поля говорят сами за себя.

Ура 🙂

3

Другие решения

когда вы удаляете сообщение, вы должны сделать что-то подобное, у вас должен быть user_id, который удаляет сообщение. Затем вы должны сначала запросить это сообщение, чтобы проверить, было ли сообщение удалено отправителем или получателем.
например

$result = mysql_query("select sender,reciver from tbl_messages where msg_id='$msgid'");
$r = mysql_fetch_array($result);
$s = $r['sender'];
$r = $r['reciever'];
if($s==$user_id)
$st = "sender";
else if($r==$user_id)
$st = "reciever";
mysql_query("update tbl_messages set $st=0 where msg_id='$msgid'");

Примечание: я предположил, что вы показываете сообщения в соответствии с идентификатором отправителя и получателя.
Это всего лишь пример (возможны ошибки и упущения). Надеюсь, это поможет вам.

2

По вопросам рекламы [email protected]