Recuperar contraseña con PHP y MySQL
Recuperar contraseña con PHP y MySQL. En este artículo veremos cómo recuperar el password olvidado de nuestro sistema web, por lo tanto, aprenderemos a actualizar la contraseña de la cuenta que se ha olvidado. Usando un vínculo para restablecer su contraseña de la cuenta que está registrada en una base de datos.
Recuperar contraseña con PHP y MySQL
Nuestro anterior tutorial de sistema de login de php había proporcionado una guía para implementar el registro de usuario y el sistema de login en php. Ahora vamos a extender ese script con la funcionalidad de contraseña olvidada con PHP y MySQL. También, le demostraremos cómo puede enviar el acoplamiento de la contraseña del restablecimiento vía email al usuario. Antes de comenzar con este tutorial de recuperación de contraseña olvidada, sugerimos pasar por el anterior sistema de inicio de sesión de php tutorial primero.
Aquí la lista de archivos que se utiliza en el proceso de recuperación de contraseña olvidada.
- Usuarios.php – Gestionar trabajos relacionados con bases de datos (MySQL)
- MiCuenta.php– Controla la contraseña olvidada por parte del usuario, actualizar contraseña, y enviar por Email los permisos para cambiar el password.
- index. php – Muestra el formulario de login con el vínculo de contraseña olvidado y regístrate si eres usuario nuevo.
- EnviarPassword.php – Formulario especial para la contraseña olvidada.
- ReiniciarPassword.php – Mostrar formulario para ingresar contraseña nueva .
- style.css – Estilo de inicio de sesión, para los formularios y estilo del módulo.
Creación de tablas de bases de datos
Para almacenar los detalles del usuario y la contraseña, es necesario tener una base de datos en MySQL. A continuación, les mostrare un ejemplo para la tabla.
CREATE TABLE IF NOT EXISTS `usuarios` ( `id` int(11) NOT NULL, `nombres` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL, `apellidos` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL, `email` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL, `password` varchar(120) COLLATE utf8_unicode_ci DEFAULT NULL, `telefono` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL, `olvido_pass_iden` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL, `creado` datetime DEFAULT NULL, `modificado` datetime DEFAULT NULL, `estado` enum('1','0') COLLATE utf8_unicode_ci DEFAULT '1' ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
Clase de usuario específicamente el fichero (Usuarios. php)
La clase de «User» maneja todos los trabajos relacionados con la base de datos, como ser, INSERT INTO. Esta clase se ha extendido con un método «Update ()» para actualizar datos de los usuarios.
class User{ private $dbHost = "localhost"; private $dbUsername = "MiUsuario"; private $dbPassword = "Password"; private $dbName = "BaseDeDatos"; private $userTbl = "TablaMysql"; //Mostrando la conexion con la base de datos public function __construct(){ if(!isset($this->db)){ // Conexion con la database $conn = new mysqli($this->dbHost, $this->dbUsername, $this->dbPassword, $this->dbName); if($conn->connect_error){ die("Falló la conexion con MySQL: " . $conn->connect_error); }else{ $this->db = $conn; } } }
Conclusión
La idea central de este tutorial es que te ayude a implementar el sistema de recuperación de contraseña olvidada con restablecimiento de la contraseña mediante el envío de Email. Para más detalles acerca del sistema, descargue el código fuente para su implementación correcta.
