Loading...
Обучение/Помощь новичкам | Дублирует сообщение
DenSBK (19 окт 2022, в 21:54)
Тогда тут надо применять правило 1 всем.
В пример могу предложить рассмотреть как работает Multicast в сетях IP передачи данных.

Multicast (мультикаст) – процесс отправки пакета от одного хоста к некоторой ограниченной группе хостов.

От сюда тебе надо сделать так что бы все твои подписчики видели 1 пост.
Зачем тебе для каждого плодить по посту? Тем самым забивая базу лишними записями и создавать этим самым нагрузку.
Помни чем больше постов в выборке тем сложнее БД работать.
у меня так и есть все подписчики мои видят мой пост, но к етому еще нужно чтобы я свои видил.
Дело в том что каждая запись из одной таблицы сравнивает ся с записью с другой таблицы и выводятся все что совпало с условием, тоесть сколько раз совпало столько и выведет повторений. Не правильно прописан запрос.
Saha_M (19 окт 2022, в 22:11)
Дело в том что каждая запись из одной таблицы сравнивает ся с записью с другой таблицы и выводятся все что совпало с условием, тоесть сколько раз совпало столько и выведет повторений. Не правильно прописан запрос.
Может быть, раньше у меня выводилось 10 копий, поставил скобки выводится 2 копии, вот так сижу и разними способами пробую
Попробуйте лучше структуру таблиц и тестовые данные показать (не в виде картинок)
В общем нашел что то подобного и там есть решение:
https://translated.turbopages.org/proxy_u/en-ru.ru.5331cbda-...rs-own-posts
Предполагаю можно так сделать
"select * from post
where id_author = {$user['id']} or id_author
in (select id_user from followers where id_follower = {$user['id']})
order by time
desc limit $start, 10"
Но не имея на руках данных не ручаюсь за результат
Сначало поставь задачу, потом решение пиши, все просто.
Temma , вопрос решен:
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");   
стало
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  GROUP BY tb2.time DESC LIMIT $start, 10");   
в чем разница?
Temma , в чем разница напишеш в лс тему закриваю!
Онлайн: 4
Время:
Gen. 0.1077
(c) Bym.Guru 2010-2026