Эй, я работаю над веб-приложением, которое имеет диалоговое окно входа в систему, которое работает как это:
<form>
- пользователь/передача отправлен через AjaxВот проблема: браузер никогда не предлагает обычное, "Сохраняют этот пароль? Да / Никогда / Не Теперь" подсказка, которую это делает для других сайтов.
Я пытался перенестись <div>
в <form>
теги с "автоматическим заполнением ='on'", но это не имело никакого значения.
Действительно ли возможно добраться, браузер, чтобы предложить хранить пароль без майора переделывают моего потока входа в систему?
спасибо Eric
p.s. для добавления к моему вопросу я определенно работаю с browers, которые хранят пароли, и я никогда не нажимал "never for this site"... это - технический вопрос с браузером, не обнаруживающим, что это - форма входа в систему, не ошибка оператора :-)
Ваш сайт, вероятно, уже находится в списке, где браузеру предлагается не запрашивать сохранение пароля. В firefox: Параметры -> Безопасность -> Запомнить пароль для сайтов [флажок] - исключения [кнопка]
Браузер возможно, не удастся определить, что ваша форма является формой входа в систему. Согласно некоторым обсуждениям в предыдущем вопросе , браузер ищет поля формы, которые выглядят как
. Реализовано ли поле формы вашего пароля аналогично этому?
Изменить: Чтобы ответить на ваши вопросы ниже, я думаю, что Firefox обнаруживает пароли с помощью form.elements [n] .type == "пароль"
( итерация по всем элементам формы), а затем обнаруживает поле имени пользователя путем поиска в обратном направлении по элементам формы текстового поля непосредственно перед полем пароля (дополнительная информация здесь ). Насколько я могу судить, ваша форма входа должна быть частью
, иначе Firefox ее не обнаружит.
Использование файла cookie, вероятно, будет лучшим способом сделать это.
Вы могли бы установить флажок «Запомнить меня?» и попросите форму создать файл cookie для // логина // пользователя. РЕДАКТИРОВАТЬ: Информация о сеансе пользователя
Чтобы создать файл cookie, вам необходимо обработать форму входа с помощью PHP.
Правда в том, что вы не можете заставить браузер спросить. Я уверен, что браузер имеет свой собственный алгоритм для угадывания, ввели ли вы имя пользователя/пароль, например, ищет ввод type="password"
, но вы не можете установить что-либо, чтобы заставить браузер.
Вы можете, как предлагают другие, добавить информацию о пользователе в cookie. Если вы это сделаете, лучше зашифровать ее как минимум и не хранить их пароль. В крайнем случае, храните имя пользователя.
Не каждый браузер (например, IE 6) имеет опции для запоминания учетных данных.
Одна вещь, которую вы можете сделать, это (как только пользователь успешно войдет в систему) сохранить информацию о пользователе через файл cookie и иметь опцию «Запомнить меня на этой машине». Таким образом, когда пользователь приходит снова (даже если он вышел из системы), ваше веб-приложение может получить файл cookie и получить информацию о пользователе (идентификатор пользователя + идентификатор сеанса) и позволить ему / ей продолжать работу.
Надеюсь, это может быть наводя на размышления. :-)