es simple:
1) Si es usuario (no se registro o no se logió nunca) es invitado "Nivel 0" ->Invitado
2) Si es usuario LOGIADO (y en el campo de la db esta el nivel "1") ->logiado con nivel 1
3) Si el usuario LOGIADO (y en el campo de la db esta el nivel "2") ->logiado con nivel 2
creas una tabla con campo nombre de usuario, email, etc etc.
y un campo llamado "nivel" int (1)
Cuando se registra el usuario (en el INSERT en la db insertas también el campo nivel con el valor "1").
luego en un panel de admin tuyo si queres que el usuario tenga privilegios "2"
actualizas ese campo con el id del usuario. (update ... where id bla... nivel "2")..
//Aca realicé un ejemplo. Practicamente está cocinado. Deberias crear las tablas con el campo mensionado anteriormente.
Las paginas de login, register etc.
Ahora vamos a las paginas que van a estar protegidas... de niveles. y la clase para detectar los niveles del usuario.
Clase para detectar nivel del usuario:
archivo_detector_de_nivel.php
Código PHP:
Ver original<?php
class Chequiar_usuarios{
public function nivel_check() {
// Si no ha iniciado sesion[id_usuario] entonces es nivel '0' invitado.
if( empty($_SESSION['id_usuario']) ){ $nivel_cont_user = 0;
return $nivel_cont_user;
}else{
// si hay session de usuario entonces... >>>>>
//Consultamos a la base de tados, ejemplo: Select nivel from tabla_usuarios where id = id_del_usuario
$nivel_content_user = $row['nivel'];
return $nivel_cont_user; //Devuelvo el nivel del usuario
}
}
}
?>
//Pagina protegida por niveles
home.php
Código PHP:
Ver original<?php
//Incluimos el archivo que contiene la función que detecta en la db si el usuario tiene nivel 0, 1 o 2.
require 'archivo_detector_de_nivel.php';
//Asignamos una variable de la funcion del archivo incluido para obtener respuestas a los permisos.
$chequiar_usuarios = new Chequiar_usuarios();
$variable_del_detector = $chequiar_usuarios->nivel_check;
//Si no esta logiado... es Invitado por lo cual lo "hechamos a otra pagina para que no acceda a este contenido" eso DIRECTAMENTE tambien lo podemos hacer en la misma clase del otro archivo...
if($variable_del_detector==0){
header('Location: http://www.indexdemipagina.com'); //Lo envio a la pagina que deseo. exit(); //Finalizo el script por si las moscas. }
?>
<html>
<head>
</head>
<body>
<?php if($variable_del_detector==1){ //Compruebo si el usuario tiene nivel 1 ?>
<b>Bienvenido usuario nivel 1</b>
<hr>
<?php
}
if($variable_del_detector==2){ //Compruebo si el usuario tiene nivel 2 vip
?>
---
<strong>Bienvenido usuario nivel 2 VIP!!!</strong>
--
<hr>
<?php
}
?>
</body>
</html>
Si hay algun error avisen!
un saludo!!