Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] ocultar un nivel en php

Estas en el tema de ocultar un nivel en php en el foro de PHP en Foros del Web. Hola amigos del foro, espero me puedan ayudar. 1.- Si estoy logeado como "nivel 1" (Administrador) tengo la lista completa, hasta aqui todo bien. 2.- ...
  #1 (permalink)  
Antiguo 18/07/2021, 04:15
 
Fecha de Ingreso: noviembre-2004
Ubicación: NULL
Mensajes: 655
Antigüedad: 20 años
Puntos: 6
ocultar un nivel en php

Hola amigos del foro, espero me puedan ayudar.
1.- Si estoy logeado como "nivel 1" (Administrador) tengo la lista completa, hasta aqui todo bien.
2.- Si estoy logeado como "nivel 2" (Empleado) no debe verse en el "<select>" en "nivel 1" (Administrador).

La idea es, que el nivel 1 en este caso "Administrador" debe ver la lista completa
Si NO ES el nivel 1, mostrar solo los demas niveles.


Código HTML:
Ver original
  1. -TABLA NIVELES-
  2.  
  3. |  id_niveles | nombres_niveles
  4. |  1          | Administrador
  5. |  2          | Empleado
  6. |  3          | Visita
  7.  
  8. -TABLA LOGIN-
  9.  
  10. |  id_login   | usuario    | contrasena | id_niveles
  11. |  1          | Juan       |  123456    | 1
  12. |  2          | Pedro      |  123456    | 2
  13. |  3          | Luis       |  123456    | 2
  14. |  4          | Pepe       |  123456    | 2
  15. |  5          | Carlos     |  123456    | 3
  16. etc...


Aqui obtengo la lista completa, hasta aqui todo bien.
Código PHP:
Ver original
  1. <?php
  2. include_once 'conn.php';
  3. $query = $conn->query("SELECT * FROM niveles");
  4. ?>
  5. <select name="id_niveles">
  6. <option selected disabled value="0"></option>
  7. <?php
  8. while ($row = mysqli_fetch_array($query)) {
  9. ?>
  10. <option value="<?php  echo $id_niveles = $row["id_niveles"]; ?>"><?php  echo $nombres_niveles = $rows["nombres_niveles"]; ?></option>
  11. <?php } ?>  
  12. </select>

Esto seria una opción, pero no se como podria aplicarlo al <select>...
cuando este logeado como nivel 2.
Código PHP:
Ver original
  1. <?php   if ($_SESSION['id_niveles'] == '1') {   ?>
  2.  
  3. Aqui mostraria mi <select> solo para el nivel 1,  "Administrador"
  4.  
  5. <?php } else { ?>
  6.  
  7. En caso sea NO ES nivel 1, mostrarle los otros niveles
  8.  
  9. <?php  }    ?>
  #2 (permalink)  
Antiguo 18/07/2021, 05:34
Avatar de zerpico_01  
Fecha de Ingreso: enero-2008
Ubicación: Wilde - Avellaneda -
Mensajes: 421
Antigüedad: 16 años, 10 meses
Puntos: 13
Respuesta: ocultar un nivel en php

Pues tiene que realizar la consulta enviando
Código PHP:
 $_SESSION['id_niveles'
si entendí bien es lo que necesita, de todos modos es difícil ayudarlo por que yo no trabajo en modo procedimiento, es mejor usar POO para todo, es mas fácil trabajar y se evita todos estos embrollos.

saludos
__________________
Es duro fracasar en algo, pero es mucho peor no haberlo intentado. - Si crees todo lo que lees, mejor no leas -
  #3 (permalink)  
Antiguo 18/07/2021, 15:26
 
Fecha de Ingreso: noviembre-2004
Ubicación: NULL
Mensajes: 655
Antigüedad: 20 años
Puntos: 6
Respuesta: ocultar un nivel en php

Cita:
Iniciado por zerpico_01 Ver Mensaje
Pues tiene que realizar la consulta enviando
Código PHP:
 $_SESSION['id_niveles'
si entendí bien es lo que necesita, de todos modos es difícil ayudarlo por que yo no trabajo en modo procedimiento, es mejor usar POO para todo, es mas fácil trabajar y se evita todos estos embrollos.

saludos
Hola zerpico_01, gracias por responder, y en POO como seria el ejemplo. tal vez lo adapta a procedimiento.

Y si alguien mas pueda aportar una ayuda bienvenido sea.
  #4 (permalink)  
Antiguo 18/07/2021, 19:12
Avatar de zerpico_01  
Fecha de Ingreso: enero-2008
Ubicación: Wilde - Avellaneda -
Mensajes: 421
Antigüedad: 16 años, 10 meses
Puntos: 13
Respuesta: ocultar un nivel en php

Es que no se entiende lo que desea hacer, primero tiene que dar mas detalles de su proyecto de lo contrario siempre la ayuda sera a medias.
Por lo que noto usted esta yendo a ciegas ante algún deseo de proyecto. Para evitarse esto tiene que comenzar desde cero y diagramar su proyecto, muchos usan software para el diagrama, yo prefiero usar lápiz y papel y ahí surgen mejor las idas y el UML es mas claro, suelo gastar resmas enteras de papel a4

comience por esto :

https://es.wikipedia.org/wiki/Lengua...do_de_modelado

luego siga con esto:

https://www.php.net/manual/es/language.oop5.php

No puedo darle un ejemplo en poo para su ejemplo, por que tendria que tener la classe db ORM para que le funcione, normalmente usando un ORM propio o de teneros seria

select->(algo)->where('id =a algo)....

asi de simple

Si esta empezando y no quiere liarse con todo esto, puede usar algún frame de tercero o usar symfony

https://symfony.com/

es bastante rápido para crear proyectos y no tiene que hacer nada, por ejemplo para crear un sistema de usuario seria algo asi:

composer require symfony/security-bundle

composer require symfony/maker-bundle --dev

crear nuestra clase usuario y empleando para ello el MakerBundle:

php bin/console make:user

ahí ya tiene archivo user.php y todo lo que necesita para comenzar

puede buscar en google como comenzar con symfony, si es lo que desea utilizar.
es fácil de usar.

de todos modos yo no uso esas cosas es mas divertido hacerlo uno mismo.
Existen miles de framework, en español por ejemplo:

https://kumbiaphp.com/blog/

algo bastante simple como modelo MVC

http://www.tinymvc.com/

mas complicados:

https://laravel.com/

https://www.yiiframework.com/


en fin hay cientos cientos.... todos tienen sus ventajas y desventajas....

saludos
__________________
Es duro fracasar en algo, pero es mucho peor no haberlo intentado. - Si crees todo lo que lees, mejor no leas -

Última edición por zerpico_01; 18/07/2021 a las 19:20
  #5 (permalink)  
Antiguo 18/07/2021, 21:19
 
Fecha de Ingreso: noviembre-2004
Ubicación: NULL
Mensajes: 655
Antigüedad: 20 años
Puntos: 6
Respuesta: ocultar un nivel en php

si no desean ayudar no dañen el post.
  #6 (permalink)  
Antiguo 20/07/2021, 14:27
 
Fecha de Ingreso: noviembre-2004
Ubicación: NULL
Mensajes: 655
Antigüedad: 20 años
Puntos: 6
Respuesta: ocultar un nivel en php

le puse el IF antes del while ($row.....
y ya funciona.

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:58.