![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
maxipub |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 517 Регистрация: 22.10.2009 Репутация: нет Всего: 1 |
Собственно, сабж.
![]() ЗЫ: при первом запросе. |
|||
|
||||
baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 26 Всего: 101 |
никак
Добавлено через 8 минут и 35 секунд что бы проверить, надо поробовать установить и принять, а для этого браузер должен сделать повторный запрос. обычно манипулируют Location, чтобы с точки зрения пользователя это был первый запрос, но технически браузер обращается повторно. |
|||
|
||||
s0lman |
|
|||
![]() Белый и лохматый ![]() ![]() Профиль Группа: Участник Сообщений: 637 Регистрация: 1.11.2007 Где: Ukraine Репутация: 9 Всего: 29 |
Можно попробовать стартовать сессию. Если не ошибаюсь, по умолчанию SID передается в куках, если они недоступны - в УРЛ. Если в GET найдется идентификатор сессии - возможно, куки отключены.
Хотя я уверен, что проверка включены ли куки - неправильный способ решения какой-то более глобальной задачи. -------------------- Когда я уже выучусь на волшебника? :( |
|||
|
||||
baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 26 Всего: 101 |
||||
|
||||
maxipub |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 517 Регистрация: 22.10.2009 Репутация: нет Всего: 1 |
Есть сайт, где много разных всяких кастомных штук, которые очень хорошо будет сохранять после регистрации. Т.е. гость зашел, понастраивал все под себя, зарегался - а все данные уже в его профиле, повторно все настраивать необходимости нет. Раньше настройки хранились в куках и проблем (с мусором - дальше описано) не было. Но куки ограничены по размеру, а настройки разрастаются. Да и не очень хорошо огромные кукиши при каждом запросе дергать. Делаю так: при первом заходе посетителя на сайт, создаем ему гостевой аккаунт и вешаем куку с его guest_id и guest_password. Далее все настройки пишутся в БД, и при регистрации просто импортируются. Проблема очевидна: юзеры без кук клонируют пустые гест-акки при каждом запросе. Это, конечно, не сверх критично. Но хочется сделать по-нормальному. |
|||
|
||||
baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 26 Всего: 101 |
||||
|
||||
SergV |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 197 Регистрация: 4.8.2006 Где: Германия Репутация: нет Всего: 1 |
На пхп проверить можно только после перезагрузки страницы, если куки не записаны их нет, то пишем, перезагружаем и читаем. Записались, значить включены, нет, значить нет. А вот с JavaScript думаю можно проверить без перезагрузки страницы, но я в JS ноль, так что это ток предположение, судя по быстрому поиску, в JS есть возможность работы с куками. JavaScript работает на стороне клиента, в отличии от пыха, а значить можно сразу проверить включена в браузере поддержка куков, или нет.
А какой смысл давать гостям настраивать сайт под себя по полной программе? Если им нужны настройки, пусть регистрируются нормально, и тогда уже в базе хранить эти настройки. Не хотят региться, то минимум настроек в куки, типа выбрать цвет сайта или тему, и язык по умолчанию(если есть), и всё, кукис на год, и хватит баловать. ИМХО конечно, но я лично не вижу смысла гостям давать лишние настройки сайта, даже точнее сказать вообще давать им какие нибудь настройки. Но если это так важно, то максимум то что написал выше, а для этого размера куков хватит за глаза, да и можно ведь для одного сайта их создать несколько, если одного мало. Этот ответ добавлен с нового Винграда - http://vingrad.com |
||||
|
|||||
maxipub |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 517 Регистрация: 22.10.2009 Репутация: нет Всего: 1 |
Здорово. А как определить что это не первый запрос от пользователя? Разве что реферер на ум приходит, но этот вариант не надежен. Банально, многие фаерволы, блокировщики рекламы, плагины и т.д. его вырезают. IP + юзерагент тоже гарантий не дают. Там можно. Но JavaScript есть не у всех юзеров. Сейчас многие шарятся с телефонов, например. Сорри, это не вариант в принципе, мы работаем по принципу "все для клиента" и последними не разбрасываемся. ![]() |
|||
|
||||
Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 14 Всего: 137 |
||||
|
||||
s0lman |
|
|||
![]() Белый и лохматый ![]() ![]() Профиль Группа: Участник Сообщений: 637 Регистрация: 1.11.2007 Где: Ukraine Репутация: 9 Всего: 29 |
Если, к примеру, храните язык и тему оформления сайта в куках, то если будете достоверно знать, что куки отключены - что это изменит? -------------------- Когда я уже выучусь на волшебника? :( |
|||
|
||||
SergV |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 197 Регистрация: 4.8.2006 Где: Германия Репутация: нет Всего: 1 |
Если юзер заходит первый раз на сайт, то куков 100 пудов нет, а это проверяется через пустой $_COOKIE. Дальше, если отключен яваскрипт, то к примеру тегом <noscript> можно вывести предупреждение, что без включенного яваскрипт не будет доступно то или сё... Плюс..., не знаю не одного фаервола или блокировшика который бы вырезал ява скрипт. Есть блокировка по баннерам, всплывающим окнам, и переходам на другую страницу без спроса, а такие скрипты как доступ к кукам думаю не один блокировщик не заблокирует.
Яваскрипт по умолчанию есть у всех юзеров, если они его сами не отключили в браузере. Это Flash не доступен по умолчанию на всяких там айфонах/айпадах, и вроде как на новых андроидах, но и то его можно поставить вручную. Так что, если всё для клиента, то тут без яваскрипт не обойтись, и здесь для отдельных клиентов, что яваскрипт отключают, можно вежливо дать понять - " Уважаемый пользователь, у вас отключена поддержка JavaScript, которая требуется для полноценной работы сайта. Без JavaScript вы не сможете пользоваться теми и теми возможностями...". Думаю не кто материться не станет из клиентов, и не уйдёт с сайта, да же те кто не знает как его включить назад, если дать ссылку на помощь как включить яваскрипт и куки. Большинство же клиентов/посетителей даже не знают что ява скрипт можно отключить, а те кто знает, знают как и включить. Этот ответ добавлен с нового Винграда - http://vingrad.com |
||||
|
|||||
baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 26 Всего: 101 |
||||
|
||||
maxipub |
|
||||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 517 Регистрация: 22.10.2009 Репутация: нет Всего: 1 |
Вы писали: "отнюдь. проблема в реализации. разве сложно проверить, что $_COOKIE пустой?". Если первый заход - кук не будет в любом случае. А если куки отключены, то они и не появятся. Итак, имеем ситуацию с запросом без кук: и как тут понять, это просто первый заход на сайт, или же кукиши отключены? Об этом и речь.
0.7%
Не будет засоряться БД.
Таких полно. Я не знаток в них, но тот же NoScript к примеру, жутко популярный. сессии === кукиши ![]() ??? Добавлено через 2 минуты и 35 секунд ![]() ![]() Спасибо всем за обсуждение! ![]() |
||||||
|
|||||||
baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 26 Всего: 101 |
нет Добавлено через 4 минуты и 58 секунд maxipub, открою вам страшную тайну: если бы в php не существовало сессий, а в http кук, то все равно остается возможность эмуляции сессии. для этого в каждый запрос добавляется идентификатор. это всегда возможно, т.к. контент и содержащиеся в нем ссылки генерируются сервером. Добавлено через 5 минут и 47 секунд и вот это почитайте на досуге |
|||
|
||||
maxipub |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 517 Регистрация: 22.10.2009 Репутация: нет Всего: 1 |
baldina, вы передаете идентификатор сессии через URL?
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |