Hola a todos, estoy creando un sistema para una biblioteca y tengo una duda con los permisos para los usuarios que se crean en el sistema, tengo tres perfiles, los Administradores pueden eliminar por ejemplo libros, los demas no:
- Administradores
- Trabajadores
- Consultores
Cada permiso esta almacenado en una variable de session llamado "permiso".
Tengo un módulo donde se visualizan los libros creados, listo los libros asi:
Código:
<body>
<table border="1">
<tr>
<td>Nombre</td>
<td>Género</td>
<?php
if( $_SESSION["permiso"] == 1 ) //Significa que es administrador muestro la opción de eliminar
<td>Eliminar</td>
?>
</tr>
<?php
$sql = myslq_query("SELECT id_libro,nombre, genero FROM libros WHERE estado = '1' ");
while( $libro = mysql_fetch_array( $sql )) {
?>
<tr>
<td><?php echo $libro["nombre"];?></td>
<td><?php echo $libro["genero"];?></td>
<?php
if( $_SESSION["permiso"] == 1 ) //Significa que es administrador
<td><a href ="eliminarlibro.php?id_libro=<?php echo $libro["id_libro"]">Eliminar</a></td>
?>
</tr>
<?php
}
?>
</table>
</body>
Pero tengo una duda, esta forma es adecuada? es decir, en cada página tendría que controlar qué puede hacer cada usuario, en este caso compruebo si es administrador y muestro las opciones de eliminar, pero si yo quisiera que el usuario consultor también eliminara en este modulo de libros pero en los demás no, tendría que hacer un OR en cada IF y si quisiera en otras páginas el proceso sería muy tedioso, de que otra forma puedo manejar esto de manera más optima?
Gracias por las sugerencias que me puedan brindar.