2015-12-04 3 views
3

В настоящее время я работаю над формой html. Как установить минимальную длину пароля на 8, чтобы он отклонил любой пароль, который вводит пользователь, который меньше 8. Как это сделать?Как установить минимальную длину пароля

Вот код:

<div id="login-form"> 
      <form method="post"> 
      <table align="center" width="30%" border="0"> 
      <tr> 
      <td><input type="text" name="email" placeholder="Your Email" required /></td> 
      </tr> 
      <tr> 
      <td><input type="password" name="pass" placeholder="Your Password" required /></td> 
      </tr> 
      <tr> 
      <td><button type="submit" name="btn-login">Sign In</button></td> 
      </tr> 
      <tr> 
      <td><a href="register.php">Sign Up Here</a></td> 
      </tr> 
      </table> 
      </form> 
     </div> 

ответ

5

Если вы используете HTML5 вы можете использовать pattern и необходимый атрибут для ввода тега:

<input type="password" pattern=".{8,}" required title="8 characters minimum"> 
<input type="password" pattern=".{8,12}" required title="8 to 12 characters"> 

Также есть minlength атрибут для ввода тегов, но он еще не был реализован в Firefox.

<input type="password" minlength="8" required> 
1

Изменить кнопку:

<button name="btn-login">Sign In</button> 

И добавить этот код JavaScript (с помощью JQuery):

$('button[name="btn-login"]').click(function() { 
    if($('input[name="pass"]').val().length < 8) { 
     alert('Minimum length = 8'); 
    } else { 
     $('form').submit(); 
    } 
}); 

Не забудьте добавить этот в ваш PHP-код.

2

Вы можете использовать атрибут шаблона:

<input pattern=".{8,}" type="password" name="pass" placeholder="Your Password" required /> 
0

К сожалению, минимальная длина атрибута не поддерживается на всех браузерах. check this out

Из-за этого следует использовать альтернативный метод.

Я выбрал использование регулярного выражения, как показано ниже;

<input type="password" name="pass" title="Password must be 8 characters including 1 uppercase letter, 1 lowercase letter and numeric characters" required pattern="(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{6,}" > 
+0

Я не думаю, что это ваша ответственность, чтобы рассказать мне, как я выбираю для меня безопасный пароль. Зачастую я не подписываюсь на сайтах, на которых лежат такие кирпичи. – Tim

+0

Вы правы. Этот код просто образец и все еще работает в производстве. Итак, если вы хотите использовать этот код, вам может потребоваться изменить условия регулярного выражения в соответствии с вашей ситуацией. Удачи. – efkan

Смежные вопросы