Что определяет форму входа в систему для целей автозаполнения? - PullRequest
0 голосов
/ 24 января 2011

У меня есть типичная форма входа в систему с именем пользователя и паролем. Когда пользователь вводит эту информацию, его веб-браузер сохраняет для него имя пользователя и пароль (при условии, что его браузер настроен на это). Предположим, что имя пользователя - «User01», а пароль - «Password01».

Теперь предположим, что пользователь меняет / сбрасывает свой пароль на «Password02». Веб-браузер не распознает мою форму сброса пароля как форму входа, поэтому он не обновляет / не изменяет / не сохраняет пароль в веб-браузере пользователя.

Поэтому, когда пользователь покидает мой веб-сайт и возвращается позже, он попадает на мою страницу входа. Они вводят свое имя пользователя «User01», и он автоматически заполняет неправильный пароль «Password01», но пользователь не знает этого, потому что он просто видит ****. Пользователь в конечном итоге блокирует свою учетную запись, а затем вызывает нашу службу поддержки клиентов, чтобы кричать на нас.

<form action="updatePassword.php" name="frmPasswordChange" method="POST">

<label>Old Password</label>
<span class="textbox"><input type="password" maxlength="14" size="14" name="oldPassword"></span>
<br />

<input type="hidden" name="username" value="User01">

<label>New Password</label>
<span class="textbox"><input type="password" maxlength="14" size="14" name="newPassword"></span>
<br />

<label>Re-enter New Password</label>
<span class="textbox"><input type="password" maxlength="14" size="14" name="newPasswordReEntered"></span>
<br />

<span class="buttonHolder">
<button type="submit" class="styledButton updateButton">Save Password</button>  
</span>

</form>

1 Ответ

1 голос
/ 24 января 2011

Я думаю, что способ, которым браузер обрабатывает ввод, во многом основан на семантическом чтении формы входа в систему.То есть, если текстовое поле называется «имя пользователя», а поле пароля - «пароль», это имеет тенденцию переноситься.

Проблема в вашем случае заключается в том, что у вас две разные страницычерез который можно войти.Это известная проблема / особенность, заключающаяся в том, что веб-браузеры связывают информацию для входа на странице на странице.Например, на одном из сайтов, на которые я регулярно захожу, хранятся разные учетные данные для входа между домашней страницей и страницей забытого пароля (со страницей «забытый пароль», как ни странно, с правильными учетными данными).

До какого-то родастандарта, который позволяет связывать формы чем-то вроде атрибута ID, я хочу сказать, что с этим мало что можно поделать, кроме, возможно, быстрого чтения IP и присвоения имени пользователя,Но это было бы потрясающе плохой практикой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...