решено Сортировка смайликов

L

ler

Гость
#1
1. Что отвечает за сортировку смайликов в боковой панели на странице /posting.php
2. Как лучше сделать чтобы самые популярные смайлы были первые в списке
 

Nightmare

Разработчик
#4
@ler Правильно сделать чтобы самые популярные смайлы были у каждого юзера свои с точки зрения юзабилити. Если никто ничего не менял и мне не изменяет память, то сортировались они раньше по длине кода смайлика, как-то так. В общем функция generate_smilies в bbcode.php
 
L

ler

Гость
#5
Правильный вариант довольно ленивый.
Создал колонку hits в bb_smiles, осталось прикрутить счетчик по клику на смайл с запросом в базу.
Киньте какой нибудь готовый кусок явы, а то с нуля никак
 

Exile

Администратор
#6
За сортировку отвечает этот файл:

Please Login or Register to view hidden text.



По поводу самых популярных есть вариант решения, но уж без реализации. Добавляем в таблицу смайлов столбец count, например. Кроном с определенными интервалами делаем выборку всех смайлов из базы данных (текстов сообщений). Для простоты, лучше переименовать все смайлы в что-то в стиле :smiley_***: - выборку соответственно делать по нему же. К каждому смайлику в таблице считать число совпадений и вставлять это число в столбик count. Ну и в файле, на который я скинул ссылку, делать сортировку по нему. Посты, естественно, надо выбирать не за все время, а то список будет постоянный. А за месяц, например.
 
L

ler

Гость
#8
Это проще. Чтоб не переименовывать 900 смайлов пропишу id для img по типу smiley_imgname
 

Exile

Администратор
#9
@PheRum почему тяжелая? Условно 90 смайлов. Раз в сутки ночью сделать селект для каждого из 90 смайлов - 90 запросов по сути. Не тяжелее задачи синхронизации.
 

Nightmare

Разработчик
#10
@Exile Как показывает практика проектирования интерфейсов, чаще всего популярные смайлы определяются числом нажатий на них, а не их вставкой в сообщения, лучше при выборе смайлика отправлять аяксом данные о клике и складывать по смайлу клики. Но я бы лучше сделал таблицу со столбцами user_id и smilies_count, во второй столбец вставлял бы и обновлял, при нажатии смайлика, информацию по нему сериализовал и клал обратно. Получилось бы для каждого пользователя кто пользуется смайлами своя сортировка
 
Сверху