X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Новости типа как во вконтакте
Gesha!
Gesha!
Topic Starter сообщение 9.11.2012, 2:49; Ответить: Gesha!
Сообщение #1


Здравствуйте, уважаемые пользователи сообщества. Даво не заходил сюда, много всего интересого появилось и это радует.

Есть задача - сделать на сайте новости пользователя, типа как во вконтакте. Там будет отображаться кто добавил его в друзья, новости сайта, ответы на его сообщения, кто ставил лайки на его материалы и т.п. Принцип вывода такой же, как и в вышеупомянутой социальной сети, то есть что свежее, то отображается выше. Проблема в том, что вся эта информация о добавлении в друзья, новости сайта, ответы на сообщения и т.д. хранится в разных таблицах базы.

Так вот хочу спросить у профи как рациональнее организовать такой функционал, не нагружая сервер лишними запросами. Зараннее благодарен.
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
sc2r2bey
sc2r2bey
сообщение 10.11.2012, 23:46; Ответить: sc2r2bey
Сообщение #2


а что уже сделано?


--------------------
Заметки о разработке и не только
программирую web и для we
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Гость_0_* Гость_0_*
сообщение 10.11.2012, 23:54; Ответить: Гость_0_*
Сообщение #3


Есть новости сайта в таблице news, комментарии в comments и добавление в друзья (в таблице users есть поле add_friends, в котором через запятую пишутся id пользователей, которые хотят с вами "дружить").
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
sc2r2bey
sc2r2bey
сообщение 10.11.2012, 23:57; Ответить: sc2r2bey
Сообщение #4


мне кажется ТС с форумом ошибся, но если уже написал, то можно сделать так:
тыц
потом посмотреть в сторону mysqli
и посмотреть как реализовано тут


--------------------
Заметки о разработке и не только
программирую web и для we
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Гость_0_* Гость_0_*
сообщение 11.11.2012, 0:03; Ответить: Гость_0_*
Сообщение #5


[member=surfer], это да, нужно было в mysql создавать, сейчас перенесу.
То есть, нужно делать это ОДНИМ сложным запросом, верно?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
sc2r2bey
sc2r2bey
сообщение 11.11.2012, 0:06; Ответить: sc2r2bey
Сообщение #6


минимум да: тут и тут + mysqli + ...


--------------------
Заметки о разработке и не только
программирую web и для we
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Гость_0_* Гость_0_*
сообщение 11.11.2012, 0:29; Ответить: Гость_0_*
Сообщение #7


[member=surfer], спасибо, нужно будет поизучать движок этот.
Вот, к моему удивлению, быстро нашёл функцию getActionsLog(), которая возвращает массив событий для ленты активности. Так такой вот интересный запрос:

SELECT log.id as id,
log.user_id,
log.object as object,
log.object_url as object_url,
log.target as target,
log.target_url as target_url,
log.pubdate as pubdate,
log.description as description,
a.message as message,
a.name as name,
u.nickname as user_nickname,
u.login as user_login

FROM cms_actions_log log
LEFT JOIN cms_actions a ON a.id = log.action_id AND a.is_visible = 1
LEFT JOIN cms_users u ON u.id = log.user_id

WHERE 1=1 {$this->inDB->where}

ORDER BY log.id DESC
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
sc2r2bey
sc2r2bey
сообщение 11.11.2012, 0:39; Ответить: sc2r2bey
Сообщение #8


если нужен будет инвайт туда - пиши, скину :)


--------------------
Заметки о разработке и не только
программирую web и для we
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Гость_0_* Гость_0_*
сообщение 11.11.2012, 0:42; Ответить: Гость_0_*
Сообщение #9


[member=surfer], инвайт куда? :)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
sc2r2bey
sc2r2bey
сообщение 11.11.2012, 0:45; Ответить: sc2r2bey
Сообщение #10


для регистрации на сайте Instanta

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


--------------------
Заметки о разработке и не только
программирую web и для we
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Большие ставки для кликов в Я.Директ. Как удешевить?
2 rownong27 1124 26.3.2024, 14:13
автор: knezevolk
Открытая тема (нет новых ответов) Как вы бросили работу и перешли на заработок с сайтов?
12 uahomka 2298 25.3.2024, 6:52
автор: Skyworker
Открытая тема (нет новых ответов) Как отозвать банковский платеж фрилансеру?
28 metvekot 3922 25.3.2024, 6:34
автор: Skyworker
Открытая тема (нет новых ответов) Как вывести деньги в Украине с заблокированного Юмани ?
23 freeax 3650 24.3.2024, 20:55
автор: Liudmila
Открытая тема (нет новых ответов) Через какой браузер и как можно найти в кэшэ браузера видео
10 Room 1943 23.3.2024, 7:41
автор: Room


 



RSS Текстовая версия Сейчас: 29.3.2024, 16:32
Дизайн