Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Избранное на сайте, без регистрации
Покинул форум
Сообщений всего: 499
Дата рег-ции: Янв. 2010 Откуда: Россия, Москва
Помог: 1 раз(а)
Здравствуйте, подумываю у себя на сайте сделать избранное, без регистрации.
Идея проста, но возможно с точки алгоритма будет нелепа?
Описание: Избранное без регистрации - реализовать данную затею планируется с использованием куки т.е. пользователь нажимает на "звездочку" (серую), создается кука (если она не найдена, если найдена, то ищем последнее вхождение строки и заносим id, разделяет записи, пробел), далее обновление страницы, разбор данных куки на массив explode(), сверка с БД и вывод информации с заменой "звездочек" (на золотые).
Так же, страница вывода избранного - ищем куку, разбиваем содержимое, заносим в запрос, получаем выдачу из бд.
--
Жду Ваших комментариев, советов.
----- Для некоторых лучший способ написать что-нибудь осмысленное - это сесть _опой на клавиатуру.
Viper
Отправлено: 15 Апреля, 2011 - 10:16:29
Активный участник
Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007 Откуда: Симферополь
Помог: 98 раз(а)
LEONeso для начала думаю нужно начинать с того по какому принципу будете разделять юзера.
Ведь кука с одним и тем же именем для одного и того же браузера но для разных юзеров будет как одна. Та же сверка по БД по какому принципу будет происходить?
Покинул форум
Сообщений всего: 499
Дата рег-ции: Янв. 2010 Откуда: Россия, Москва
Помог: 1 раз(а)
Viper, регистрации на сайте нет т.е. пользователей тоже нет, есть посетители, которые анонимно используют ресурсы сайта без каких либо ограничений и обязанностей.
Думаю выверять данные через id записи или названия (в данном случае, набора).
Боюсь при проверке на наличие данной записи в избранном, может произойти ошибка 500 т.е. чрезмерно много запросов в БД, хотя обычно она выводится при 8500+ запросов (с учетом хостинга).
----- Для некоторых лучший способ написать что-нибудь осмысленное - это сесть _опой на клавиатуру.
Viper
Отправлено: 15 Апреля, 2011 - 11:32:01
Активный участник
Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007 Откуда: Симферополь
Помог: 98 раз(а)
LEONeso что-то мне кажется что проверка в БД таким образом далеко не лучший вариант.
Покинул форум
Сообщений всего: 499
Дата рег-ции: Янв. 2010 Откуда: Россия, Москва
Помог: 1 раз(а)
Viper, вот и я о том же, мне нужен дельный совет, чтобы реализовать избранное без регистрации.
----- Для некоторых лучший способ написать что-нибудь осмысленное - это сесть _опой на клавиатуру.
Viper
Отправлено: 15 Апреля, 2011 - 11:43:54
Активный участник
Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007 Откуда: Симферополь
Помог: 98 раз(а)
LEONeso могу предложить сейвить куку вида
guest_ip: {
"mark":"id", "mark":"id1"...
}
guest_ip шифровать естно. в таком случае будут проблемы только с юзерами за натами и прочей какафкой. Хотя смотря каким макаром ip определять.
LEONeso пишет:
сверка с БД и вывод информации с заменой "звездочек" (на золотые).
вот это делать очень не стоит. JS'ом просто разобрали куку, проставили метки где нужно, и только при каком-то действии юзера проверяем актуальна ли метка. Как-то так.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.