Делаю logout, удаляется сессия, но, если исвользовать Firefox, то при нажатии назад посылаются заново login и password, и в итоге попадаешь обратно в свой профиль залогиненным! Как можно решить данную проблемку?
Это особенность браузера: он предоставляет удобство для того, чтобы пользователь каждый раз не заполнял формы. Как происходит заполнение - это уже дело разработчиков, но если Firefox подставляет их, то значит обходить это не нужно, да и невозможно. Нет, конечно возможно напридумувать костылей на JavaScript разных, но оно того не стоит.
Могу предложить поля ввода именовать каждый раз по-новому например при помощи хеша или просто дописвая time() обработка конечно, несколько усложнится.
тогда я не понял в чем проблема. При запросе пароля автоматом пролетают эту страницу где логинятся обычные смертные?
igordata Например, вы общались с любовницей на сайте знакомств, сделали logout, и забыли закрыть окно браузера! А тут ваша жена садится за комп и тут незакрытая страница, она нажимает 'Back' и оппа, ты попался!
для этого есть специальный режим у IE и некоторых других браузеров. Но общее решение - делать имя поля случайным(или псевдослучайным) для клиентов
Simpliest Я до конца не могу понять, значит <input type="text" name="случайное число" value="" size="20"> - записали в name случайное число! Что по логике дальше? Понимаю что обработака, но не понимаю какая она должна быть! Записываем случайное число в сессию, делаем сравнение, если совпадает, делаем логин! При логауте, убиваем данную сессию! Примерно так? Хотя нет, сессию убивать как раз не нужно!
Примерно так. Только для простоты обработки имя делать не совсем случайным, а например name="login_случайноечисло" name="pass_случайноечисло" Но пользователи тебя любить точно не будут - ибо геморрой это для них
allowance Я же уже сказал. Есть private mode в IE и иже с ним. Не сохраняется даже история посещения (на которую ты с сервера повлиять не можешь), которая останется как ты не переименовывай поля.. Поэтому лучше напиши толковую инструкцию для своих пользователей, как им воспользоваться возможностью браузеров для приватного просмотра порно у тебя.
аммм а если капчу каждый раз ставить и запрещать кэширование? я, конечно, понимаю, что мог щас спороть чушь, но все же?
ну и че? Пользователь и так может тупо сохранить странцу залогиненого профиля =) Произвести действий все равно никаких не получится. А если получится, скорее всего у вас с register_globals косяк.
а чо я то? =)) поставил капчу, он уже хрен зайдет обтато, хоть ты крысу апстол разбей и клавиатуру об колено. =)))
ааа, блин, догнал =))) ахаха... ну тогда твой вариант, можно ... а типа при проверке логина с паролем проверять есть ли в масиве ключ вида login_[A-Z][a-z][0-9]{32} так чтоли?
И какой смысл? Тогда будет проходить любая форма, даже старая, потому что она 1:1 подходит под маску. Эх ...
ну в общем понятно, главное передать обработчику значение перед отправкой, так? или у меня уже совсем мозг расплавился на работе? =))
да ну бред. если броузер за человека вводит логин/пароль, или человек вводит их сам, то с той стороны это не отличить. Т.е. данная задача не решается при таких условиях.