Чтобы дать вам представление о том, чего я пытаюсь достичь здесь, я создал очень простую почтовую систему, в которой пользователи могут «Звезда» входящей или исходящей почты (читать позже или сохранять и т. Д.). Система очень проста и работает с аналогичной конструкцией табличной ниже Пожалуйста, обратите внимание, что я удалил некоторые столбцы, которые не имеют отношения здесь:Выберите из MySQL, соединив два столбца вместе?
Random Digit
User ID of Recipient
User ID of Sender
Message
If recipient has starred message (0 for no, 1 for yes)
If sender has starred the message (0 for no, 1 for yes)
mail_id | recip_account | sender_account | message | recip_starred | sender_starred
1 5 10 Hello 0 1
2 10 5 A Reply 0 1
3 10 20 Test 1 0
4 15 20 Message 1 1
Из приведенных выше примеров, если мы получаем помеченные сообщения для ID пользователя 10
, в запросе будет отображаться сообщение ID 1, 3
. Как вы, вероятно, можете работать - я могу легко получать помеченные сообщения, если вы просматриваете только полученные или отправленные сообщения отдельно. Хотя здесь проблема, я хотел бы показать все «помеченные» сообщения в одной папке для каждого пользователя, и, очевидно, это требует разработки того, какой пользователь выделил сообщение, или путем подключения recip_account & recip_starred ИЛИ sender_account & sender_starred и ссылка что против идентификатора пользователя?
Может кто-нибудь помочь мне здесь, в настоящее время так, как я извлечение результатов заключается в следующем:
$sql2 = "SELECT * FROM `ap_mail_system` WHERE `recip_account` = '$user_id' OR `sender_account` = '$user_id' ORDER BY `sent_date` DESC LIMIT 0, 12";
'where ... and recip_starred = 1'? –
Да, это сработало бы, если бы я показывал сообщения SENT или ПОЛУЧИЛ сообщения отдельно, но система не смогла бы сказать, кто играл главную роль в сообщении, если бы я показывал как отправленные, так и полученные сообщения вместе, и это моя проблема. – Snappysites