Ver Mensaje Individual
  #23 (permalink)  
Antiguo 27/10/2006, 09:35
Avatar de hulray
hulray
 
Fecha de Ingreso: septiembre-2006
Mensajes: 630
Antigüedad: 18 años, 2 meses
Puntos: 3
Cita:
Iniciado por Cluster Ver Mensaje
Fijate .. aquí .. generas tus variables de sesión actual:

session_start();
$_SESSION['id_usuario'] = $row['id_usuario'];
$_SESSION['usuario'] = $row['nick'];

Ya te comenté una vez más que tienes que crear un campo nuevo en tu tabla de "usuarios" para indicar el "nivel" del usuario en tu sistema.

Una vez que lo tengas creado y dado un valor a tus usuarios creados .. tan sólo debes añadir otra asignación .. crear otra variable de sesión más para "saber" en todas las páginas que el usuario navegue en tu aplicación que "nivel" de usuario tiene:

session_start();
$_SESSION['id_usuario'] = $row['id_usuario'];
$_SESSION['usuario'] = $row['nick'];
$_SESSION['usuario_nivel'] = $row['nivel'];

Y listo ... ahora sólo tienes que aplicar otro "IF" en tus páginas que desees restringir por nivel ..

por ejemplo .. restringir una página sólo a usuarios con nivel "1" (tus "Administradores" .. sólo tienes que componer tu IF condicional como necesites):

Código PHP:
<?
session_start
();
echo 
$_SESSION['usuario'];
if(empty(
$_SESSION['usuario']) {
  
header("location: noautirizado.php");
  exit;
}

if (
$_SESSION['nivel'] != "1"){
  
header("location: noautirizado_nivel.php");
  exit;
}

?>
Realmente esta validación la puedes hacer como quieras .. es una simple variable ya a ese punto y un simple "IF" .. aplicalo como necesites.

Un saludo,
Cita:
Iniciado por Cluster Ver Mensaje
Así es .. en tu tabla haces referencia al campo de nombre "usuario_nivel" y luego obtienes "nivel" .. no corresponde.

(Te fijas lo IMPORTANTE que es colocar el código que te va quedando tras recibir los consejos que te damos y tu aplicas? .. Fueses más "metódico" en este aspecto hace días que tendrías resuelto tu problema).

Un saludo,
Ya lo soluciones Cluster, y ya habia cambiado ese parametro q me dijo mauled, te agradezco tu paciencia, ya que la estabas perdiendo, jaja.