elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


  Mostrar Mensajes
Páginas: [1]
1  Programación / PHP / Re: Ayuda Login.php en: 3 Diciembre 2013, 13:20 pm
Buenas,
primer punto: el código. ¿Qué condición no se está compliendo?

<?php
//...
if($user==$user1 && $pass==$pass1 && $user!="" && $rol=="admin"){
//logueamos como admin
exit;
}elseif($user==$user1 && $pass==$pass1 && $user!="" && $rol=="user"){
//logueamos como user
exit;
}else{
//no logueamos
exit;
}
?>

Con esta estructura, ¿qué condición es la que nos "echa"?¿La primera o la segunda?¿Es por user, es por pass, ...por el rol?...

Yo propondía algo así:

<?php
//...
if($user==$user1 && $pass==$pass1 && $user!="") {
     // Se ha verificado que es un usuario, a ver que rol desempeña
     switch($rol) {
          case "admin":
          //logueamos como admin
           break;
          case "user":
          //logueamos como user
           break;
          default:
          //notificamos que el rol del usuario no está implementado o lo que sea
          }
}else{
          //notificamos que user o password son incorrectos           
}
?>

más que nada para tener algo más de control y no andar todo el rato preguntando lo mismo. Además en caso de no tener éxito, tenemos un error más específico.

Sería interesante tener la definición SQL de la tabla. A la hora de comparar el pasword, o resto de datos, ¿qué estamos comparando? Es decir, así como los locos, se me ocurrió que quizá pueda ser un error de tipos. Lo mismo podría suceder con otros valores de la siguiente condición.

if ($user==$user1 && $pass==$pass1 && $user!="" && $rol=="user")

Prueba a usar === en lugar de == . El operador '===' no realiza conversión de tipo y evita problemas "inesperados", aunque debes asegurarte de que los dos elementos son del mismo tipo.
2  Programación / PHP / Re: Desarrollando shell. en: 3 Diciembre 2013, 11:11 am
Muy interesante, ¡gracias por compartirlo!
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines