Esto es uno de los temas que mas me contactan por mp :P
Ahora les voy a explicar como hacerlo, enbase a http://www.forosdelweb.com/f18/aport...suario-725268/
Para empezar, vamos a nesesitar una fila mas en la tabla ( donde vamos a tener el rango del usuario ), por ejemplo rank:
Código sql:
Hay pondremos el rango numericamente, por ejemplo:Ver original
CREATE TABLE `users` ( `id` INT( 10 ) NOT NULL AUTO_INCREMENT PRIMARY KEY , `nick` VARCHAR( 100 ) NOT NULL , `clave` VARCHAR( 100 ) NOT NULL , `rank` INT( 1 ) NOT NULL , `email` VARCHAR( 100 ) NOT NULL ) ENGINE = MYISAM ;
Código:
Lo unico que tendriamos que editar, es entrar.php:0: Usuario desactiva, no activo su cuenta (opcional) 1: Usuario normal, cuanta activada 5: Usuario baneado (opcional) 8: Usuario adminitrador etc..
Código php:
Recuerden definir al registrar, el rango( rank ) de usuario.Ver original
<?php include('config.php'); // Incluimos la conexion a la bd y la session $user=$_POST['usuario']; $clave=$_POST['clave']; $consulta="SELECT * FROM users WHERE nick='".$user."' AND clave='".$clave."'"; // Selecionamos el nick y la clave $consultar=mysql_query($consulta,$conexion) or die(mysql_error()); // En el primer parametro ponemos la consulta, y en el segundo ponemos la conexion a la bd if(mysql_num_rows($consultar)==1){ // mysql_num_rows sirve para saber cuantos resultados devolvio la consulta // Si devolvio 1 resultado, es que los datos del usuario estan bien, porque selecionamos de la bd el nick y la clave. // es casi imposible que devuelva mas de 1, porque deven aver 2 personas que se registren con el mismo nick y clave, pero ya // vamos a evitar eso en el registro switch($datos['rank']){ case 0: // Si el rank es 0, la cuenta esta desactivada break; case 5: // Si el rank es 5, la cuenta esta baneada break; case 8: // Si es 8, es un administrador $_SESSION['usuario']=$user; // Creamos la session y le damos un dato para que lo guarde, con esta session identificamos al usuario en cualquier parate de la web. $_SESSION['administrador']='on'; // Creamos la session del administrador, para saber mas tarde. echo "Hola adminitrador!"; break; default: // Si no es ninguno de los otros, es usuario normal $_SESSION['usuario']=$user; // Creamos la session y le damos un dato para que lo guarde, con esta session identificamos al usuario en cualquier parate de la web. echo "Se a logeado correctamente como ".$user; break; } }else{ // Sino devolvio 1 resultado echo "Datos inconrrectos. Intente denuevo."; } ?>
Para implementarlo en Easy Login:
Código php:
Haci de facil! Ver original
<?php include('EasyLogin 3-0.php'); $usuario = 'demo_user'; // Usuario a registrar $clave = 'demo'; // Clave del usuario if($sis->loginUser($usuario,$clave)){ $datos=$sis->dataUser($usuario); switch($datos['rank']){ case 0: // Si el rank es 0, la cuenta esta desactivada break; case 5: // Si el rank es 5, la cuenta esta baneada break; case 8: // Si es 8, es un administrador $_SESSION['usuario']=$usuario; // Creamos la session y le damos un dato para que lo guarde, con esta session identificamos al usuario en cualquier parate de la web. $_SESSION['administrador']='on'; // Creamos la session del administrador, para saber mas tarde. echo "Hola adminitrador!"; break; default: // Si no es ninguno de los otros, es usuario normal $_SESSION['usuario']=$usuario; // Creamos la session y le damos un dato para que lo guarde, con esta session identificamos al usuario en cualquier parate de la web. echo "Se a logeado correctamente como ".$usuario; break; } }else{ echo "Usuario o clave incorrecto"; } $sis->closedBD(); // Cerramos la conexion a la bd ?>
Bueno eso es todo el tutorial :P
Espero que les ayude..
Salu2
PD: Recuerden el tema de seguridad.. yo no probe el codigo, lo hice mientras escribia el tutorial