Ver demo y codigo fuente de script de login en framework php CodeIgniter
Son 4 sencillos pasos,
- Paso 1: crear el archivo php.php y guardarlo en /application/controllers/
- Paso 2: crear el archivo login.php y guardarlo en /application/views/
- Paso 3: crear usuarios_model.php y guardarlo en /application/models/
- Paso 4: crear la tabla mysql con algunos usuarios de prueba
¿Qué es esto? | Funcionalidades del script | Explicación técnica
Descargar el código del script (incluye comentarios de cada sentencia!)
Paso 1: Código para el controlador «php.php»:
Paso 2: Código para la vista «login.php»:
Paso 3: Código para el modelo usuarios_model.php
Paso 4: Consulta Mysql para crear la tabla de usuarios
¿Qué es esto?
Se trata de un script que, mediante pocas líneas de código, te permite configurar un login de usuarios propio en tu página web.
Esta capacidad es sumamente importante y la necesitaremos en cualquier proyecto web que iniciemos. Puesto que seguramente existe cierta información y funciones que nos interesa ofrecer únicamente a usuarios registrados y no al resto del público.
Por ejemplo, si estamos haciendo un sistema web para un periódico, nos interesará que los periodistas puedan ingresar al sistema (mediante un usuario y password) y puedan ingresar noticias…. Por supuesto, esta función debería ser accesible únicamente por periodistas y no por un lector común.
Funcionalidades
- Permitir acceso a determinada información y utilidades únicamente a determinados usuarios (aquellos que se encuentren registrados en una tabla de base de datos Mysql)
- Mensaje de error cuando falta rellenar algún campo de la pantalla de acceso
- Mensaje de error cuando los datos ingresados no coinciden con ningún usuario registrado en la base de datos.
- Recordar los datos previamente ingresados por el usuario cuando éste no supera el login y tenemos que volver a presentarle la pantalla de acceso.
Explicación técnica
Como pueden observar, los códigos del script se encuentran con comentarios. Cada sentencia importante tiene su explicación de que función cumple. Lo que intentaremos ahora es hacer una explicación general de cómo funciona el script; como si fuera un cuento… :-)
Comencemos con la pantalla de acceso «login.php», donde el usuario podrá ingresar sus datos (usuario y password). Recordemos que todo lo que sea interacción con el usuario (entrada y salida de datos) lo trabajamos con las vistas (capa presentación).
Lo importante aquí es la sentencia
donde creamos nuestro formulario html y especificamos que sus datos deben ser enviados y procesados por el método «login» del controlador «php». La sentencia form_open es de CodeIgniter.
Otro punto importante de la vista es cuando creamos los campos (serían las cajas de texto donde el usuario podrá ingresar los datos):
Aquí estamos creando un campo de texto llamado «maillogin». La sentencia «set_value» nos sirve para recordar los datos rellenados por el usuario en caso que su acceso no sea válido y tengamos que volver a presentarle la pantalla de acceso. Es un valor agregado para dar mejor usabilidad a los usuarios.
Luego pasemos al controlador «php.php». Esta es la parte más compleja del script, por tal motivo intenté poner comentarios a cada una de las y facilitar así su comprensión. Te recomiendo leer los comentarios directo en el código.
El controlador (php.php) hace lo que hace es tomar los datos provenientes del formulario, hacer las validaciones, consultar al modelo (usuarios_model.php) si el usuario existe en la base de datos y su password es válida. Por último, decide si el usuario corresponde que pueda acceder, o no, y comunica su decisión a la vista (login.php) para que el usuario vea la respuesta en su pantalla.
Me interesa remarcar aquí algunas sentencias y declaraciones puntuales que son muy básicas de php y te servirán en todo sistema web que desarrolles.
-
(sirve para tomar los valores provenientes del formulario, en este caso se toma el valor del campo «maillogin»)
-
(sirve para cargar el modelo usuarios_model y poder utilizar sus recursos)
-
(ejecuta el método «ValidarUsuario» de nuestro modelo «usuarios_model» y le pasa los dos parámetros. )
En el próximo artículo continuaremos mejorando este script de login. Por ejemplo, estudiaremos como hacer para que el usuario pueda acceder a muchas pantallas de información restringida sin tener que poner siempre sus datos de login (únicamente ingresarlos la primer vez).
Espero que lo disfruten, les sea útil para sus proyectos y principalmente… Los ayude a continuar aprendiendo!
Ver demo y codigo fuente de script de login en framework php CodeIgniter
Por favor, envíen sus consultas y dudas y lo revisamos juntos :-)
Saludos!
Sobre el autor
Ing. Diego Angelini | |
(Ceo & Fundador Blogdephp.com) |
Un blog para ayudarte a aprender y compartir conocimientos sobre programación php y mysql.
Artículos y scripts listos para usar (algunos de ellos basados en el popular framework de php CodeIgniter)
Los scripts se publican con comentarios en las sentencias del código y una demo on-line para que puedas probarlo de inmediato :-)