Обучение/Помощь новичкам | Дублирует сообщение
И еще, если в запросе используете 1 OR 2 & AND 3
Необходимо явно указывать скобки
(1 OR 2) AND 3 или 1 OR (2 AND 3)
Необходимо явно указывать скобки
(1 OR 2) AND 3 или 1 OR (2 AND 3)
Простой пример запроса в DCMS который выводит сообщения. И в таблицу пишется только 1 запись. Минут только в том что если собеседник удаляет сообщение у себя то оно пропадает и у получаетля.
php
$q=mysql_query("SELECT * FROM `mail` WHERE `id_user` = '$user[id]' AND `id_kont` = '$ank[id]' OR `id_user` = '$ank[id]' AND `id_kont` = '$user[id]' ORDER BY id DESC LIMIT $start, $set[p_str]"); Так тебе надо отправить сообщение собеседнику в БД должно писать твое сообщение и собеседника, получается будет 2 записи.
То и надо делать запись таким образом что бы были ID твой и того кому пишут они в любом случае будут разные.
Я всего лишь тебе привел пример. Как у тебя там все реализовано я не знаю.
sql
$c = $db->query("SELECT * FROM `followers` tb1,`post` tb2 WHERE tb1.id_user = '". $user['id'] ."' AND tb1.id_follower = tb2.id_author ORDER by tb2.time DESC LIMIT $start, 10"); Простой пример запроса в DCMS который выводит сообщения.
php
$q=mysql_query("SELECT * FROM `mail` WHERE `id_user` = '$user[id]' AND `id_kont` = '$ank[id]' OR `id_user` = '$ank[id]' AND `id_kont` = '$user[id]' ORDER BY id DESC LIMIT $start, $set[p_str]");
Расставьте правильно скобки 😡
Расставьте правильно скобки 😡
Расставьте правильно скобки 😡
sql
$c = $db->query("SELECT * FROM `followers` tb1,`post` tb2 WHERE (tb2.id_author = '". $user['id'] ."' OR tb1.id_user = '". $user['id'] ."') AND (tb1.id_follower = tb2.id_author) ORDER by tb2.time DESC LIMIT $start, 10");
Можете ddl таблиц и тестовые данные выложить на sqlize.online, и что должно вывести
попробую помочь
попробую помочь
У меня есть две таблицы post - ето сообщения всех пользователей, таблица followers - ето юзери на которых я подписан и которые подписани на меня. Я 2 табли. соединяю
sql
$c = $db->query("SELECT * FROM `followers` tb1,`post` tb2 WHERE tb1.id_user = '". $user['id'] ."' AND tb1.id_follower = tb2.id_author ORDER by tb2.time DESC LIMIT $start, 10"); php
tb2.id_author = '". $user['id'] ."' OR tb1.id_user = '". $user['id'] ."' sql
$c = $db->query("SELECT * FROM `followers` tb1,`post` tb2 WHERE (tb2.id_author = '". $user['id'] ."' OR tb1.id_user = '". $user['id'] ."') AND tb1.id_follower = tb2.id_author ORDER by tb2.time DESC LIMIT $start, 10"); Можете ddl таблиц и тестовые данные выложить на sqlize.online, и что должно вывести
попробую помочь