Ver Mensaje Individual
  #2 (permalink)  
Antiguo 20/03/2012, 09:57
Avatar de Nemutagk
Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 1 mes
Puntos: 406
Respuesta: condicional segun logeo del usuario

Deberías guardar el tipo de usuario en una variable de sesión, en tu código veo $_SESSION['admin'] pero esto no funciona, ya que solo valida si es administrador o no (claro, según la lógica que puedo ver en tu código, mas no se realmente el valor de dicha variable), lo mejor seria algo así...

Código PHP:
Ver original
  1. <?php //inicio del archivo
  2.  
  3. if (isset($_SESSION['userType']) && $_SESSION['userType'] == 'admin' && $_SESSION['userType'] == 'coor') {
  4.  
  5. echo 'Usuario valido';
  6. }else {
  7. echo 'Usuario invalido!';
  8. }

O mejor aun, podrías crear una función que valide los datos, solo le pasas el tipo de usuario que quieres que tenga acceso...

Código PHP:
Ver original
  1. <?php
  2.  
  3. function validarUsuario($usuarios) {
  4.     $isValid = false;
  5.     if (!is_array($usuarios)) {
  6.         if (isset($_SESSION['userType']) && $_SESSION['userType'] == $usuarios) {
  7.             $isValid = true;
  8.         }
  9.     }else {
  10.         if (isset($_SESSION['userType'])) {
  11.             foreach($usuarios as $user) {
  12.                 if ($_SESSION['userType'] == $user) {
  13.                     $isValid = true;
  14.                 }
  15.             }
  16.         }
  17.     }
  18.    
  19.     return $isValid;
  20. }
  21.  
  22. /* Hay dos formas de usar la funcion anterior,
  23.  * una de ellas es pasar solo un usuario como
  24.  * un string: validarUsuario('admin'), la otra
  25.  * es pasarle un array con los usuarios validos:
  26.  *
  27.  * $usuarios = array('admin','coor','otro');
  28.  * validarUsuario($usuarios);
  29.  *
  30.  * En la variable $usuarios puedes agregar tantos
  31.  * usuarios quieras que tengan acceso al código
  32.  * dentro del if...
  33.  */
  34.  
  35. $usuarios = array('admin','coor');
  36.  
  37. if (validarUsuario($usuarios)) {
  38.     echo 'Usuario valido!';
  39. }else {
  40.     //Aquí puedes mostrar un error o reedireccionar
  41.     //mostrar error...
  42.     echo 'Usuario invalido o no inicio sesión!';
  43.     //redireccionar!
  44.     header('location: error.php');
  45.     //OJO, no debes hacer ningun echo o tener salida
  46.     //algúna (codigo HTML etc) antes del header!
  47. }

Nota: se me olvidaba, puedes también usar la función para bloquear el acceso a partes del código dentro del archivo siguiendo la lógica que te mostré en el ejemplo!
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)