Si desarrollas un sistema y estas corto de tiempo, PHP Login System Reloaded puede echarte una mano.
Es un sistema de login que puede ser integrado fácilmente a tus proyectos, totalmente configurable y que entre sus caracterÃstica encontramos lo siguiente:
- Desarrollado en PHP 5.
- Extensión MySQLi.
- EnvÃa enlace de confirmación de registro a la dirección de correo electrónico.
- Función de restablecimiento de contraseña: enviando un vinculo al correo electrónico para el restablecimiento y no la contraseña nueva.
- Transacciones InnoDB para operaciones de base de datos.
- Validaciones hechas con AJAX.
- Uso de jQuery.
- Uso de imagen Captcha (reCaptcha) para evitar el spam.
- Extensión MySQLi.
- EnvÃa enlace de confirmación de registro a la dirección de correo electrónico.
- Función de restablecimiento de contraseña: enviando un vinculo al correo electrónico para el restablecimiento y no la contraseña nueva.
- Transacciones InnoDB para operaciones de base de datos.
- Validaciones hechas con AJAX.
- Uso de jQuery.
- Uso de imagen Captcha (reCaptcha) para evitar el spam.
El usuario administración dispone de un panel de control donde puede gestionar cada cuenta de usuario: bloquearla, eliminarla, ver dirección IP, número de accesos, fecha del ultimo acceso, paÃs de procedencia, cambiar estatus de la cuenta, etc.
La instalación es bastante sencilla, solo hay que descargarse la ultima versión del sistema y subirlo a tu servidor (preferiblemente dentro de la carpeta de tu proyecto).
Luego hay que obtener las keys para poder usar el reCaptcha, creamos la cuenta, hay que introducir nuestro dominio y luego de aceptar se generan dos keys necesarias (una publica y una privada), las mismas las usaremos luego para activar el captcha.
Lo siguiente es crear la base de datos:
mysql> DROP DATABASE IF EXISTS phploginsystem; Query OK, 2 rows affected (0.40 sec) mysql> CREATE DATABASE phploginsystem; Query OK, 1 row affected (0.00 sec)
y luego creamos las tablas con la data por defecto (utilizaremos el archivo tables.sql ubicado dentro del paquete de descarga).
En la consola colocamos:
mysql -uUSUARIO -pPASSWORD phploginsystem < RUTA/tables.sql
Ahora hay que actualizar las constantes del sistema, abrimos el archivo constants.php (ubicado en la capeta PHP) y empezamos.
Entre las más resaltantes:
Los datos de la base de datos:
// tu server define("DB_SERVER", "localhost"); // tu usuario define("DB_USER", "root"); // tu password define("DB_PASS", "1234"); //nombre de tu base de datos define("DB_NAME", "phploginsystem");
Estableciendo las keys:
define("PUBLICKEY","tu_key_publica"); define("PRIVATEKEY","tu_key_privada");
Los campos confirmación de E-mail y confirmación de contraseña son campos configurables, por defecto se muestran, pero podemos evitarlo colocando a false los valores:
define("REPEAT_EMAIL",true); define("REPEAT_PASSWORD",true);
Para integrarlo con tus proyectos primero hay que llamar al index de tu sistema una vez el usuario se ha logueado y lo demás es controlar que verá este dependiendo del tipo de usuario. Ejemplo:
(clic para mostrar/ocultar).
// incluimos el archivo core.php require_once("php/core.php"); // creamos ina instancia $objCore = new Core(); $objCore->initSessionInfo(); // evaluamos si se inicio la sesion if($objCore->getSessionInfo()->isLoggedIn()){ // mostamos los datos correspondiente si el usario incio sesion // bienvenida de ejemplo, echo "Bienvenido <b>",$objCore->getSessionInfo()->getUserInfo('email'), "</b>, tu estás loggeado en este momento." ," - <a href=\"RUTA/editaccount.php\">[Editar Cuenta]</a> "; /* evaluamos si el usuario es un administrador, si es asi, mostramos algun otro dato que le corresponda */ if($objCore->isAdmin()) echo "<a href=\"RUTA/admin.php\">[Panel de administración]</a> "; // mostramos el enlace de cierre de sesión echo "<a href=\"RUTA/php/corecontroller.php?logoutaction=1\">[Salir]</a>"; } else { // redirigimos al usuario a la pagina principal header("Location: RUTA/index.php");exit; }
Solo queda probarlo..
Enlaces:
Sitio oficial:tympanus.net
- Los comentarios están siendo moderados y serán publicados en la brevedad posible.