Login por cookies mediante PHP y MySQL
Junio 28th, 2008 por alwaisonEn un proyecto personal,estoy implementando un panel de control, con el acceso restringido mediante un login. Para que no sea necesario introducir cada vez que entremos a la página nuestros datos otra vez, he añadido un sistema de cookies, que se encargarán de validar directamente al usuario durante una hora.
El sistema es realmente sencillo. Necesitamos, para empezar, una base de datos donde almacenemos los usuarios y contraseñas. Podría ser algo así:
-
CREATE TABLE usuarios (
-
id tinyint(3) UNSIGNED NOT NULL AUTO_INCREMENT,
-
nombre varchar(64) collate utf8_spanish2_ci NOT NULL,
-
mail varchar(128) collate utf8_spanish2_ci NOT NULL,
-
pass varchar(40) collate utf8_spanish2_ci NOT NULL COMMENT ‘en sha1′,
-
grupo enum(‘editor’,‘admin’,‘god’) collate utf8_spanish2_ci NOT NULL,
-
PRIMARY KEY (id)
-
)
Lo único destacable es el sql, es que la contraseña la almacenaremos codificada mediante la función SHA1, que crea una cadena de 40 caracteres.
Lo más lógico en estos casos es tener el directorio donde queremos restringir el acceso (en nuestro caso cpanel) y dentro de él, un archivo index.php que mostrará la información que deseamos, y un login.php que servirá para que los usuarios puedan hacer login y tener acceso (lógico, ¿no?).
El usuario, cuando quiera entrar al área privada, entrará por la ruta www.midominio.com/cpanel/
El navegador, directamente, lo redirige al archivo index.php (o index.html, depende de como tengamos configurado el servidor, y si existe o no el archivo).
Veamos que código necesitamos en este index.php:







