0

正常に動作する非常に単純なメッセージング システムを構築しましたが、少し問題があります。テーブルに新しいメッセージを挿入するとき、そのメッセージを送信したユーザー名に関連付けています。メッセージを送信したユーザーがそのメッセージを削除すると、メッセージは受信者からも削除されます。

メッセージを送信者からのみ削除したい。テーブルを更新しdeleted = 'yes'、実際の削除を行う前に最初にメッセージを設定します。誰かが私にアイデアを教えてもらえますか?

テーブル構造

ID、from_user、to_user、件名、メッセージ、削除済み、送信済み、日付

$delete =$mysqli prepare("update messages set deleted = 'yes' where from_user = ?  and id = ? ");
$delete->bind_param('ss', $username->username, $id);
 foreach  ($_POST['id'] as $id) {
$delete->execute();

実際の削除...

$stmt = $mysqli->prepare("DELETE  FROM messages where from_user = ?  and id = ?  or to_user = ? and id = ?");
$stmt->bind_param('ssss', $username->username, $id, $username->username, $id);
 foreach  ($_POST['id'] as $id) {
$stmt->execute();
4

2 に答える 2

0

シンプルなアイデア:p

必要なテーブル:

メッセージ

id、コンテンツ、lastmodified_time

メッセージユーザー

ID、UserId、MessageId、DeliveryType、削除済み

すなわち:

メッセージ:

1、テスト メッセージ、2013-10-31 00:00:00

メッセージユーザー

1、11999、1、「発信」、0

2、12585、1、「着信」、1

于 2013-10-30T22:57:28.583 に答える