Comunidad de diseño web y desarrollo en internet online

Crear menu y submenu con mysql y php

Citar            
MensajeEscrito el 24 Mar 2009 03:34 am
Tengo el siguiente problema:

Quiero crear un menu y que cada item del menu tenga un submenu, esto quiero crearlo en mysql con php por que quiero agregar desde un formulario items y submenus, para esto se me ocurrio crear una base de datos con dos tablas, una llamada "menu" y otra "submenu".


amano escribió:

En las tablas:

Menu:
id nombre descripcion

Submenu
id id_cat nombre


ahora, mediante esta consulta sql:

Código :

$query = "SELECT menu.nombre, menu.descripcion, group_concat(submenu.nombre) FROM menu INNER JOIN submenu ON menu.id = submenu.id_cat";


obtengo este array:

Código :

Array
(
    [0] => Home
    [nombre] => Home
    [1] => Ir a inicio
    [descripcion] => Ir a inicio
    [2] => hhhhh,asdasdasd,asdasdasd,fghfgtyty
    [group_concat(submenu.nombre)] => hhhhh,asdasdasd,asdasdasd,fghfgtyty
)


Me gusta como me arroja el resultado, pero me gustaria que me agregara los demas menus y sus submenus, solo obtengo los datos de home y no de los demas menus.

A final de cuentas busco obtener algo como esto para despues mediante css manipular y darle forma:

Código :

<ul id="nav"> 
  <li><a href="#">Home</a></li> 
  <li><a href="#">About</a> 
    <ul> 
      <li><a href="#">History</a></li> 
      <li><a href="#">Team</a></li> 
      <li><a href="#">Offices</a></li> 
    </ul> 
  </li> 
  <li><a href="#">Services</a> 
    <ul> 
      <li><a href="#">Web Design</a></li> 
      <li><a href="#">Internet Marketing</a></li> 
      <li><a href="#">Hosting</a></li> 
      <li><a href="#">Domain Names</a></li> 
      <li><a href="#">Broadband</a></li> 
    </ul> 
  </li> 
  <li><a href="#">Contact Us</a> 
    <ul> 
      <li><a href="#">United Kingdom</a></li> 
      <li><a href="#">France</a></li> 
      <li><a href="#">USA</a></li> 
      <li><a href="#">Australia</a></li> 
    </ul> 
  </li> 
</ul> 


Alguna idea de como podria hacerlo teniendo la informacion en mysql y manipular con php?...


Gracias y un saludo =)

Por superior_amano

1 de clabLevel



 

firefox
Citar            
MensajeEscrito el 26 Mar 2009 12:09 am
la solucion que te ofresco yo es bastante resumida en comparacion con lo que tienes es algo q se conoce con jerarquia padre - hijo lo que haces es q colocas todo en una tabla en la cual tendras un campo como padre ,hijo y de esta forma podras referenciar cada padre con su hijo y asi sucesivamente un padre puede tener n hijos donde los hijos seran subcatergorias y cada hijo podra tener n hijos que seran los nietos de el padre principal es algo facil de entender es algo como

Código :

padre 
  - hijo
    -< Nieto
    -< Nieto2
  - hjo2
   -< nieto1
   -< nieto2 

se entiende a la perfeccion no crees bye ;-)

Por talcual

686 de clabLevel



 

Colombia

firefox
Citar            
MensajeEscrito el 26 Mar 2009 02:27 pm
Gracias por responder, entiendo lo que me dices pero el problema es que no puedo aplicarlo en codigo, un ejemplo me vendria bien gracias =)

Por superior_amano

1 de clabLevel



 

firefox
Citar            
MensajeEscrito el 05 Jul 2011 03:19 pm
Hola yo tmb estoy buscando la forma de hacer ese tipo de menús con jerarquías pero no puedo terminarlo alguien daría una manito?

Por portuhermana

0 de clabLevel



 

chrome
Citar            
MensajeEscrito el 27 Oct 2011 11:14 pm
lean flojos... jajajajaja

Por dantealf

0 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.