Autenticar usuario usando PDO y password_verify()
Autenticar usuario usando PDO y password_verify(). Aprenderemos a incorporar la función password_verify() a la hora de comprobar la contraseña almacenada en MySQL y la contraseña enviada por el usuario a través de un formulario web.
Login usuario usando PDO y password_verify()
En primer lugar, hay que asegurarse varios puntos:
- Las contraseñas deben estar almacenadas y cifradas en la base de datos utilizando la función password_hash().
- Almacenar en una variable PHP el input password enviada a través de un formulario.
- Disponer de la variable de conexión PDO para realizar consultas SQL.
Nota:
Suponiendo que ya tenemos una instancia de PDO válida en la variable llamada $conexion, mientras que las credenciales del usuario provienen de una solicitud POST o GET. Luego debemos de comprobar la similitud de los datos con la data existente en MySQL.
a) Conexión mediante PDO PHP
En PHP podemos realizar una conexión a una base de datos MySQL de diferentes maneras, tenemos por ejemplo mediante PDO (Objetos de Datos PHP).
//Conexión mediante PDO
$conexion= new PDO('mysql:host=localhost;dbname=my_database', 'my_user', 'my_password');
b) Login de Usuario usando PDO
Una vez que ya tenemos la conexión a MySQL de manera correcta procedemos a realizar la consulta SQL para verificar la contraseña, veamos el ejemplo.
$stmt = $conexion->prepare("SELECT * FROM usuarios WHERE email = ?");
$stmt->execute([$_POST['email']]);
$mi_usuario= $stmt->fetch();
if (password_verify($_POST['password'], $mi_usuario['password']))
{
echo "Acceso validado!";
} else {
echo "Acceso invalido";
}
Conclusión
Los beneficios de usar PDO para conectarse a MySQL es que puedes manejar varias configuraciones al realizar consultas a la base de datos. Ademas, de ser mas segura para evitar inyecciones SQL.
necesito codigo fuente facturacion e inventarios en php nativo
cuanto cuenta