powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / авторизация по F5
12 сообщений из 12, страница 1 из 1
авторизация по F5
    #39533504
Qlewero4ek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На моём сайте вводится логин пароль, выставляются куки - пользователь авторизован. затем пользователь нажимает кнопку выход - куки авторизации удаляются из базы данных, пользователь перенаправляется на страницу авторизации. Теперь если пользователь нажмёт кнопку назад в браузере, а затем обновит страницу, то он вновь будет авторизован с новым куки. что делать?
...
Рейтинг: 0 / 0
авторизация по F5
    #39533554
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А как это он будет авторизован, на каком основании?
Старая кука из базы удалена - значит, попытка сопоставления пришедшей куки с конкретным пользователем по записи в таблице авторизаций не будет успешной. В такой ситуации должен выдаваться запрос на авторизацию.

Qlewero4ekчто делать?Анализировать алгоритм, искать ошибку.
...
Рейтинг: 0 / 0
авторизация по F5
    #39533572
ewero4ek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle, повторяется запрос с отправкой логина и пароля на эту страницу. потому и куки создаётся новая. попробую отправлять не формой, а ajaxом, возможно, ajax-запрос невозможно будет повторить. отпишусь, что получится
...
Рейтинг: 0 / 0
авторизация по F5
    #39533625
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Повторная отправка формы по F5 уж не знаю сколько раз обсуждалась на форуме. Простейшее решение - редирект страницы на себя. Продвинутое - в форму при отдаче добавляем одноразовый уникальный идентификатор экземпляра формы в скрытое поле, а на приеме смотрим, есть это идентификатор в базе или нет. Есть - авторизуем и удаляем идентификатор (ибо, он уже протух), нет - отдаем форму. Есть ещё варианты.
...
Рейтинг: 0 / 0
авторизация по F5
    #39533813
Qlewero4ek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle, по нажатию на кнопку "выход" я удаляю куки из бд, делаю перенаправление на эту же страницу. т.к. куки не совпадают, пользователя выкидывает на страницу авторизации. пока всё хорошо. но! опять же нажимаю кнопку назад, на страницу, где должен сидеть уже авторизированный пользователь. она не отображается. нажимаю f5. повторно отправляются логин и пароль, пользователь автоматически входит
...
Рейтинг: 0 / 0
авторизация по F5
    #39533846
Qlewero4ek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle, со скрытой формой и записью в бд звучит хорошо, но это надо создавать отдельную таблицу в бд, т.к. нет никакой привязки к конкретному пользователю, + при каждом обновлении страницы авторизации будет создавать новая запись в бд, а старая навсегда останется в бд, т.е. придётся вновь обращаться к базе со страницы авторизации и удалять её. ajaxом не получится? или получится, но способ со скрытыми идентификаторами хорош именно тем, что работает исключительно средствами php?
...
Рейтинг: 0 / 0
авторизация по F5
    #39533874
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Qlewero4ekсо скрытой формойС полем
Qlewero4ekнет никакой привязки к конкретному пользователю,В таблице временных идентификаторов экземпляра формы? Она и не нужна.
Qlewero4ekстарая навсегда останется в бдЧто мешает кроме "своей" записи удалить так же и остальные протухшие (записи с возрастом, скажем, более 10 минут) непосредственно в скрипте авторизации?
Qlewero4ekработает исключительно средствами php?Это алгоритмическая фишка, которая явно разрешает принимать данные от клиента только если форма была сгенерирована специально для конкретного случая. При переходах на предыдущую страницу формой будет отдан "протухший" идентификатор. Серверная технология не имеет никакого значения.

Либо ищите ошибку в реализации Вашего алгоритма. Если верить описанию, он должен работать. Конечно, если только используется авторизация веб-формой, а не HTTP-авторизация, когда браузер по каждому чиху отправляет регистрационные данные.
...
Рейтинг: 0 / 0
авторизация по F5
    #39534149
Qlewero4ek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
понял принцип. напишу для чайников, как я:
1.php - страница авторизации
2.php - страница обработки введенных логина-пароля, генерации и установки куки в бд и браузер
3.php - рабочая страница
т.е. чтобы авторизоваться по f5, нужно нажать f5 на странице 2.php. но 2.php тупо перенаправляет на 3.php при правильном пароле, на 1.php при неправильном, на ней браузер не задерживается
как всё оказалось просто. скрытые поля начал делать, но не пригодились, т.к. пока что не нашёл минусов данного решения
...
Рейтинг: 0 / 0
авторизация по F5
    #39534167
Qlewero4ek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
при нажатии кнопки назад в браузере пользователь всё ещё может попасть с 1.php на 3.php и прочитать личную информацию пользователя на странице, даже не имея куки. что делать в этом случае?
...
Рейтинг: 0 / 0
авторизация по F5
    #39534325
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Qlewero4ekпри нажатии кнопки назад в браузере пользователь всё ещё может попасть с 1.php на 3.php и прочитать личную информацию пользователя на странице, даже не имея куки.Откуда берется страница для отображения - её вебсервер отдает, или, банально, браузер достает из своего кеша? В последнем случае можно пытаться запретить кеширование, ограничить время жизни документа, но всё это носит отчасти рекомендательный характер и вполне может быть проигнорировано браузером или прокси.
...
Рейтинг: 0 / 0
авторизация по F5
    #39535993
Qlewero4ek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
прописал
Код: html
1.
<meta http-equiv="Cache-Control" content="no-cache">

не помогло. сделал так: при нажатии на кнопку идет перенаправление на эту же страницу с post-параметром. при загрузке страницы проверяется, имеется ли этот параметр. если да, то страница пустая, происходит перенаправление на страницу регистрации. Но. При нажатии кнопки "назад" в браузере переходим не на пустую страницу, а на заполненную всеми личными данными, которые, остаются мистическим образом(чтобы получить их, нужны куки, которые стираются из бд при нажатии на кнопку "выход".
по моему плану я выполнял переход на ту же страницу, но не заполнять, чтобы браузер запомнил её(адреса совпадают, get запросов нет. а при нажатии кнопки "назад" в браузере должно перекидывать на пустую страницу. но что-то идёт не так...
...
Рейтинг: 0 / 0
авторизация по F5
    #39536048
Qlewero4ek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
мой способ работает! проблема была в том, что куки не успевали удалиться ajax-запросом, хотя ajax-запрос и стоит выше по коду, чем перенаправление. сначала выполняю перенаправление на свою же страницу при помощи скрипта с post-параметром, в шапке страницы проверяю на php, не пришёл ли параметр. если пришёл, то перенаправляю на страницу регистрации. если пользователь нажмёт "назад" в браузере, то попадёт на пустую страницу. таймеры не пригодились, страница успешно перезаписывается в кэше моментально
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / авторизация по F5
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]