Foros del Web » Programando para Internet » PHP »

Menu en php

Estas en el tema de Menu en php en el foro de PHP en Foros del Web. Vengo a pedir un poco de ayuda, resulta que estoy haciendo un menu en php, ya saben padre - hijo. ejemplo: Código PHP: function  display_children ...
  #1 (permalink)  
Antiguo 22/06/2015, 23:17
 
Fecha de Ingreso: diciembre-2013
Mensajes: 108
Antigüedad: 10 años, 4 meses
Puntos: 1
Pregunta Menu en php

Vengo a pedir un poco de ayuda, resulta que estoy haciendo un menu en php, ya saben padre - hijo.

ejemplo:


Código PHP:
function display_children($parent,$level,$total,$linkes,$idlogin) {
   
$conexion conn();
   
$result "SELECT a.id_menu, a.label, a.link, a.sort, a.id_login, Deriv1.Count FROM `menu` a  LEFT OUTER JOIN (SELECT parent, COUNT(*) AS Count FROM `menu` GROUP BY parent) Deriv1 ON a.id_menu = Deriv1.parent WHERE a.parent = '".$parent."' AND a.id_login = '".$idlogin."'";
    
   
$select_rmysqli_query($conexion,$result);
                    
    while (
$row $select_r->fetch_assoc()){    
        
$count $level;
         
        if (
$row['Count'] > 0) {

            
$total .= $row['label'].',';
            
$linkes .= $row['link'].',';
            
            if(
$parent == 0){
            
            
$total $row['label'].',';
            
$linkes $row['link'].',';
            }
            
            if(
$row['label'] != ''){
            
display_children_two($row['id_menu'], $level 1,$total,$linkes,$idlogin,$start_from,$num_rec_per_page);
            }

        } elseif (
$row['Count']==0) {
            

            
$total .= $row['label'].',';
            
$linkes .= $row['link'].',';


            
            if(
$parent == 0){
            
            
$total $row['label'].',';
            
$linkes $row['link'].',';
            }
            
            if(
$row['label'] != ''){
            
            echo 
$total.'~'.$linkes.'|';
                
            
            }
        

        }
    }



Lo que quiero es concatenar el menu con el fin de que me salga una combinacion, ejemplo:

Como deberia concatenarse:

Chevrolet,ku-1111,
Chevrolet,tor-2323233,
Chevrolet,goo-4444,uu-66,

Esto es lo unico que eh logrado:

Chevrolet,ku-1111,
Chevrolet,ku-1111,tor-2323233,
Chevrolet,ku-1111,tor-2323233,goo-4444,uu-66,

alguna ayuda?, me explique lo mas detallado que pude muchas gracias , espero su ayuda.
  #2 (permalink)  
Antiguo 24/06/2015, 00:48
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Menu en php

Es muy mala idea una función recursiva (o conjunto de funciones) para extraer información de la base de datos, consumes recursos innecesariamente.

Lo ideal es que puedas cargar todas las opciones del menú con una sola consulta y guardarlo en un array con una estructura que te permita recorrerlo fácilmente... algo como esto: http://www.forosdelweb.com/f18/aport...3/#post4284145
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 26/06/2015, 22:02
 
Fecha de Ingreso: diciembre-2013
Mensajes: 108
Antigüedad: 10 años, 4 meses
Puntos: 1
Respuesta: Menu en php

Gracias por responder, seguiré tus consejos, espero lograr lo que quiero echare un vistazo al link salu2.

Etiquetas: mysql, select
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 10:15.