Ocultar contraseña al registrarse en PHP
El campo de entrada de contraseña generalmente es un
input con tipo password, en el cual
los caracteres ingresados se ocultan bajo asteriscos.
Esto se hace para que un delincuente
no pueda espiar la contraseña del usuario por encima del hombro
en el momento del registro.
Ocultar la contraseña de esta manera es bueno por supuesto, pero existe, sin embargo, un problema: el usuario no ve lo que está ingresando. Puede equivocarse al ingresar algún carácter y registrarse con una contraseña diferente a la que quería. Esto será triste:(, ya que luego no podrá iniciar sesión en el sitio web.
Existe una solución estándar para este problema: se le muestran al usuario dos inputs para ingresar la contraseña: en el primer input ingresa la contraseña, y en el segundo input - su confirmación, es decir, la misma contraseña por segunda vez:
<form action="" method="POST">
<input name="login">
<input type="password" name="password">
<input type="password" name="confirm">
<input type="submit">
</form>
La tarea de nuestro sitio web es verificar que la contraseña y su confirmación coincidan, ya que es lógico que en este caso el usuario haya ingresado precisamente lo que quería ingresar:
<?php
if (!empty($_POST['login']) and !empty($_POST['password']) and !empty($_POST['confirm'])) {
if ($_POST['password'] == $_POST['confirm']) {
// registramos
} else {
// mostramos mensaje de no coincidencia
}
}
?>
Modifique su código para que al enviar el formulario, la contraseña se compare con su confirmación. Si coinciden, continúe con el registro, y si no coinciden, muestre un mensaje al respecto.