Ver Mensaje Individual
  #3 (permalink)  
Antiguo 28/03/2018, 09:55
Avatar de after
after
 
Fecha de Ingreso: junio-2006
Ubicación: De marte
Mensajes: 791
Antigüedad: 18 años, 5 meses
Puntos: 10
Respuesta: While con dos querys asociados

Cita:
Iniciado por xfxstudios Ver Mensaje
Primeramente te digo que estas utilizando mysql y es mala idea, ya que esa libreria esta depreciada y te va a dar problemas a futuro.

Por otro lado, prueba utilizando 2 funciones para la tarea, por ejemplo:

Código PHP:
Ver original
  1. function enlaces($X){
  2.     $a = $this->db->query("SELECT * FROM enlaces WHERE codigo = '$X'");
  3.     if($a->num_rows()>=1){
  4.         return $a->fetch_array();
  5.     }else{
  6.         return false;
  7.     }
  8. }
  9.  
  10.  
  11. function paneles(){
  12.     $a = $this->db->query("SELECT * FROM paneles");
  13.  
  14.     if($a->num_rows()>=1){
  15.         return $a->fetch_array();
  16.     }else{
  17.         return false;
  18.     }
  19. }
  20.  
  21.  
  22. $paneles = paneles();
  23.  
  24. if($paneles){
  25.         //Inicio la lista Principal
  26.         echo "<ul>";
  27.     foreach($paneles as $item){
  28.         //Inicio el Item de la Lista
  29.         echo "<li>".$item['titulo'];
  30.         $enlaces = enlaces($item['codigo']);
  31.         //Valido si hay enlaces para el codigo
  32.         if($enlaces){
  33.             //Si Hay enlaces inicio la sublista del item
  34.             echo "<ul>";
  35.             //Recorro los enlaces retornados
  36.             foreach($enlaces as $en){
  37.                 //Agrego las URL
  38.                 echo "<li>".$en['url']."</li>";
  39.             }
  40.             //Cierro la sub lista
  41.             echo "</ul>";
  42.         }else{
  43.             //Si no hay URLs indico el mensaje
  44.             echo "<li>Sin Enlaces para este panel</li>";
  45.         }
  46.         //Cierro el item principal
  47.         echo "</li>";
  48.     }
  49.     //Cierro la lista Completa
  50.     echo "</ul>";
  51.  
  52. }else{
  53.     //Si no hay paneles muestro el mensaje
  54.     echo "No hay paneles que mostrar";
  55. }
Gracias por responder.
Una pregunta.
Tengo una duda con la conexión a la base de datos.

Código PHP:
Ver original
  1. db = mysqli_connect("localhost", "root", "roor", "flix");
  2. function enlaces($X){
  3.     $a = $this->db->query($db, "SELECT * FROM enlaces WHERE codigo = '$X'");
No sé si así la esté haciendo bien.

Y en todo caso recibo un error de Fatal error: Using $this when not in object context in
$a = $this->db->query("SELECT * FROM paneles");
__________________
@ivancamiloGo