Estoy intentando implementar en mi proyecto, un sistema para que un usuario registrado en la BD, solo pueda estar conectado una sola vez con esas credenciales.
He estado mirando, y lo que me interesaria es que cuando un usuario esta logeado, por ejemplo con user=root pass=root, si otro se intenta logear con las mismas credenciales, este ultimo se logee y elimine la sesion del anterior.
Tengo una bd con dos campos, uno que contendra una variable de la sesion, y el otro que sera el id de la sesion. No se si necesito alguno mas.
Lo estoy intentando implementar pero no lo consigo, el codigo que tengo es este:
- Este es un archivo que agrego a todos mis archivos php, para controlar que el archivo esta logeado, es decir que se ha creado una sesion.
Código:
Creo que lo ideal, seria colocar un else para comprobar que si esta logeado en la web, mirar en la tabla sesiones si existe su sesion, y si ya existe actualizar el campo id_sesion con esta nueva sesion y eliminar la anterior, y si no crear un nuevo registro en la tabla.session_cache_limiter(); // Inicio la sesión session_start(); // Para que al cerrar la ventana se termine la sesion session_set_cookie_params(0, "/", $_SERVER["HTTP_HOST"], 0); // Comprobamos que el usuario esta logeado if ($_SESSION["logeado"] != "si") { //si no existe, envio a la página de autentificacion header("Location: index.php"); //ademas salgo de este script exit(); }
Esta ultima parte no me viene el codigo a la cabeza ahora mismo, si podeis echarme una mano os lo agradezco
Saludos!!