![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
IZ@TOP |
|
||||||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
sTa1kEr, Вы или тролль или немного глуповаты?
Это уже, простите, экономия на спичках. Думать надо, учиться и анализировать полученные знания и опыт.
Мне все равно чего там будет делать сборщик мусора. Я его как не трогал, так трогать и не собираюсь. Вы слишком самоуверенны. Во первых, опять же, никакого мусора храниться не будет. Сборщик мусора будет работать так, как это ему и положено. Во вторых, никаких новых сессий генерироваться не будет. Какой позор делать подобные предположения. В третьих - вы тут немного слукавили, ибо не всем в принципе пользователям нужна сессия, верно? Или вы ее стартуете для всех, даже для поисковых ботов? Ну и, собственно, не вижу проблемы в том, чтобы разделить пользователей, которые хотели, что бы их запомнили и тех, кто живет в течении стандартной сессии браузера. Ну и в чем разница между sekret key и session _id? Я предлагаю сделать систему прозрачной, в тоже время по надежности она не уступит вашей. А вы предлагаете лишнюю прослойку и добавляете излишней логики. Внес некоторые правки. Разницы опять не вижу. Разве что, только в том, что в Вашем варианте присутствуют излишние условия. Надо еще десяток лишних строк кода написать?! О ужас! Да не надо sekret key, он несет под собой ту же смысловую нагрузку, что и id сесии и спереть его можно точно так же, в течении сессии. Куда проще - не значит - куда правильнее. У нас работал программист, которому было куда проще сделать копипаст, чем переписать код под новые условия для возможности его повторного использования.
А вот вырывать из контекста не нужно.
При чем там был автологин вообще понятия не имею. Учитесь понимать собеседника. И еще добавлю, что бы не было недопонимания: не знаю как в вашем случае, в моей практике большинство веб-морд проектов живет на нескольких серверах. Соответственно и сессии хранятся не на диске а во внешнем хранилище (MySQL, Memcached, Memcachedb, Redis), соответственно, как бы не хотелось, но идентифицируются сессии - правильно! - по строке из 32 символов. Я это к чему? Ну, как бы опять же, про экономии на разнице в производительности индексов по строке и инту - это экономия на спичках, которая может стать серьезной проблемой только в случае, если у вас таблица вырастет за гигабайт. Добавлено @ 13:25 Это уже вопрос конкретной реализации, не нужно путать людей излишней информацией. Эм, простите, а разве Вы используете не стандартный механизм сессий? У вас свой написан? И опять же, прошу мои слова не коверкать. Я не увеличиваю время жизни сессии, я увеличиваю время жизни идентификатора сессии, что дает те же самые возможности, что и в случае с sekret key. Просто у меня отсутствует ID юзера, ибо смысла я в нем все так же не вижу. -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
||||||
|
|||||||
sTa1kEr |
|
|||
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 56 Всего: 146 |
Боже мой, сколько агрессии!
![]() А себе ответьте только на один вопрос: что произойдет, когда пользователь придет с идентификатором сессии через месяц, а самой сессии с таким идентификатором уже существовать не будет (ее почистит сборщик мусора по превышению максимального времени жизни)? |
|||
|
||||
IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Это не агрессия мой юный друг, это праведный гнев, абсолютно оправданный по отношению к столь самоуверенной личности. У меня нет вопросов, что бы на них отвечать, да еще и себе. А вот если вам не очевидно, что же произойдет, то я отвечу: стартанет новая сессия с тем же идентификатором. Все просто, ничего лишнего. -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
sTa1kEr |
|
||||
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 56 Всего: 146 |
![]() На всякий случай поясню. Так как данные об аутентификации пользователя содержатся в сессии, то стартовав ее заново, пользователю придется так же заново аутентифицировать себя. Другими словами, автологин работать не будет. Это сообщение отредактировал(а) sTa1kEr - 26.2.2010, 15:44 |
||||
|
|||||
IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Как будто со стенкой разговаривал все это время. Придется, видимо, объяснять как для умственно отсталых. Возьмем в пример ваш собственный метод. Уберем оттуда ID пользователя, а в качестве secret key подставим значение ID сесии. Как и в Вашем случае, при применении настройки автологина, идентификатор сессии будет записан куда-то на постоянное хранение. Я вообще, если честно, не понимаю, чего Вы с такими способностями к логике в программисты записались. Попробуйте другое направление, в секторе обслуживания например. -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
sTa1kEr |
|
|||
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 56 Всего: 146 |
Ага, ну вот мы и пришли к общему знаменателю ![]() Реализуем полностью мой метод со всеми "ненужными прослойками" в виде backend'ов прозрачной авторизации и заменяем в нем set_cookie() на session_set_cookie_params(), а md5(uniqid()) на session_id() ![]() |
|||
|
||||
Fortop |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2200 Регистрация: 13.11.2007 Где: Донецк Репутация: 20 Всего: 42 |
Бгг, наконец-то договорились.
-------------------- Мир это Я. Живее всех живых. |
|||
|
||||
IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Что-то Вы очень долго шли к понимаю как без secret key и user_id можно все это на обычном идентификаторе сессий построить. Возможно со временем опыт придет. Я рад, что Вы усвоили принцип хотя бы в таком виде. -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
sTa1kEr |
|
|||
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 56 Всего: 146 |
Ух! Интересно, чем же я вас так задел? Все таки подумайте над тем, что бы впредь контролировать свои эмоции. Они немного мешают вести диалог и затрудняют взаимопонимание.
![]() И еще я хотел бы добавить, генерация secret key при помощи session_id() усложняет задачу тем, что нам придется тщательно отслеживать перегенерацию SID и следить, что бы в базе всегда хранилось актуальное значение. Лучше, как говорится, держать мух от котлет отдельно ![]() Это сообщение отредактировал(а) sTa1kEr - 26.2.2010, 18:30 |
|||
|
||||
IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Тут два вариант: или своей глупостью или излишней самоуверенностью. В любом случае, не я это начал и не я это закончил. Что-то мне подсказывает, что тут достаточно сделать session_regenerate_id сразу после того, как вспомнили пользователя. Ну и опять же, secret key = session id. Потому тут не усложнение а упрощение из secret key & id в session id. Впрочем, это уже, скорее всего, на вкус и цвет. -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
sTa1kEr |
|
|||
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 56 Всего: 146 |
||||
|
||||
IgorIV |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 642 Регистрация: 7.9.2009 Репутация: 2 Всего: 8 |
||||
|
||||
IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Согласен. Придется это сделать мне. -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |