Ver Mensaje Individual
  #18 (permalink)  
Antiguo 09/07/2014, 02:52
clima
 
Fecha de Ingreso: junio-2014
Ubicación: Manresa
Mensajes: 15
Antigüedad: 9 años, 10 meses
Puntos: 1
Respuesta: subniveles a niveles de usuarios

Buenos días (tardes o noches) y sobretodo gracias por estar aquí dándole al coco.
El sistema parece sencillo pero se está liando de mala manera, lo dejaremos en sopa de letras, números y plato de spaguetti todo junto.
A ver, resumiendo el problema es este:
1- tengo 2 niveles de usuarios, el 1 y el 2. El 1 tiene un index1 con un menú, y el 2 tiene un index2 con otro menú. ( que esto va perfecto, la autentificación y redirección a cada menú funcionan correctamente)
(El problema)
2-El usuario 1 tiene otros 2 subniveles, el A y el B, comparten menú del index1 ya que tienen paginas compartidas, pero hay alguna que no.

Y el problema esta ahí, para identificar el usuario en cada pagina lo hago así(que va perfecto):
Código PHP:
Ver original
  1. <?php
  2. if (isset($_SESSION['a_USUARIO'])) {
  3.     echo 'Bienvenido, ';
  4.     echo '<b>'.$_SESSION['a_USUARIO'].'</b>.';
  5.     echo '<p><a href="logout.php"><font color=\"#0000ff\">Desconectar</font></a></p>';
  6. }else{
  7.      header ("Location: index.php");
  8.      exit();
  9. }
  10. ?>

pero el problema es cuando quiero que, depende del usuario, pueda o no pueda acceder a según que paginas.
He probado con una columna mas en la base de datos que he nombrado NIVEL2 y luego he trabajado con el switch, pero no acaba de funcionar bien, se queda la pagina en blanco y no hace nada, me parece que me dejo algo:
Código PHP:
Ver original
  1. <?php
  2.     $subnivel = $_SESSION["NIVEL2"];
  3.     switch ($subnivel) {
  4.     case '1':
  5.     header ("Location: xxxxx.php");
  6.     case '2':
  7.       header ("Location: yyyyy.php");
  8.     case '0':
  9.     header ("Location: index.php");
  10.     exit():
  11.         }
  12.     ?>
A ver que les parece ahora la explicación y los códigos. También como inciso decirles que todos los niveles, tanto el NIVEL1 como el NIVEL2 los coloco yo en la base de datos, solo cuando se registran les da el 0 como defecto.

Saludos a todos!