Ver Mensaje Individual
  #2 (permalink)  
Antiguo 27/09/2011, 06:29
Avatar de Raziel_Ravenheart
Raziel_Ravenheart
 
Fecha de Ingreso: agosto-2011
Ubicación: Ibagué, Tolima
Mensajes: 192
Antigüedad: 12 años, 8 meses
Puntos: 37
Exclamación Respuesta: Menu que dependa de los privilegios de un usuario

Pues exactamente es casi lo que yo he hecho y total, solo el servidor puede controlar este tipo de situaciones, y no creo que relentice mucho la aplicación, por que ya lo he probado.

Primero, cuando el usuario ingresa en el sitio, comparo sus datos con la base de datos y recupero los privilegios que tiene, luego, en la variable de sesión guardo este dato, por ejemplo:

Código PHP:
Ver original
  1.  
  2. // Otras lineas de código
  3.  
  4. $_SESSION['privilegioUsuario'] = $datos['privilegio'];

Teniendo en cuenta que $datos es un array asociativo que obtuve usando la función mysql_fetch_assoc, después de haber hecho la consulta en la base de datos.

Y cuando cambio de página, solo vuelvo a utilizar la función "session_start()", para luego por medio de un if o un switch, cargar una variable llamada menú, algo así:

Código PHP:
Ver original
  1.  
  2. if (isset($_SESSION['privilegioUsuario'] )) {
  3.  if ($_SESSION['privilegioUsuario']  === 1) {
  4.   $menu = array ('Bases de datos'=>'modificarBaseDatos.php', 'Administracion'=>'administracionDatos.php', 'Otra_pagina_solo_para_admins'=>'soloAdministradores.php', 'Perfil'=>'perfiles.php');
  5.  
  6.  } else if ($_SESSION['privilegioUsuario']  === 2) {
  7.    $menu = array ('Administracion'=>'administracionDatos.php', 'Otra_pagina_solo_para_admins'=>'soloAdministradores.php', 'Perfil'=>'perfiles.php');
  8.  } else if ($_SESSION['privilegioUsuario']  === 3) {
  9.    $menu = array ('Perfil'=>'perfiles.php');
  10.  }
  11. }

Y luego con un 'foreach', obtengo tanto la opción del menú como la dirección y los imprimo en en HTML y listo. Si alguien más puede complementar mi respuesta o corregir algo, se lo agradecería también.