Foros del Web » Programando para Internet » PHP »

Modificar forma de llamar a una clase de un menu

Estas en el tema de Modificar forma de llamar a una clase de un menu en el foro de PHP en Foros del Web. Hola amigos. Estoy realizando una clase para mostrar un menu anidado. La clase es esta: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original class menu {   ...
  #1 (permalink)  
Antiguo 12/09/2011, 11:14
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años, 6 meses
Puntos: 6
Modificar forma de llamar a una clase de un menu

Hola amigos.

Estoy realizando una clase para mostrar un menu anidado.

La clase es esta:

Código PHP:
Ver original
  1. class menu
  2. {
  3.     //Mostramos los menus, declarando antes las variables necesarias para mantener las secciones activas.
  4.     private $ruta;
  5.     private $var_get;
  6.     private $nombre_enlace;
  7.     private $nivel;
  8.  
  9.     public function imprimir_menu($ruta, $var_get, $nombre_enlace, $nivel = 0)
  10.     {
  11.         $this->ruta=$ruta;
  12.         $this->var_get=$var_get;
  13.         $this->nombre_enlace=$nombre_enlace;
  14.         $this->nivel=$nivel;
  15.         //Llamo a la funcion nivel para empezar a construir el menu en funcion de las variables pasadas.
  16.         $this->nivel();
  17.     }
  18.    
  19.     public function imprimir_submenu($ruta, $var_get, $nombre_enlace)
  20.     {
  21.         $this->ruta=$ruta;
  22.         $this->var_get=$var_get;
  23.         $this->nombre_enlace=$nombre_enlace;
  24.         //Llamo a la funcion nivel para empezar a construir el menu en funcion de las variables pasadas.
  25.         $this->construyo_submenu();
  26.     }
  27.    
  28.     //Si la variable nivel es igual a 1, es porque se quiere mostrar el menu si el usuario es de nivel 1
  29.     private function nivel()
  30.     {
  31.         if ($this->nivel == 1)
  32.         {
  33.             if (isset($_SESSION['nivel']) && $_SESSION['nivel'] == 1)
  34.             {
  35.                 $this->construyo_menu();
  36.             }
  37.         }
  38.         else
  39.         {
  40.             $this->construyo_menu();
  41.         }
  42.     }
  43.     //Seleccionamos si el <li> será seccion activa o no.
  44.     private function seccion_activa ()
  45.     {
  46.         /*En los enlaces, le paso una variable con el nombre de donde he pulsado y cuando vuelvo a cargar esta pagina, según la variable que exista con ese nombre, le pongo a la etiqueta li la clase seccion activa, para que se quede marcado en azul oscuro en que lugar del menu estoy. Esto lo tengo que hacer con todas las opciones del menú.*/
  47.         if(isset($_SESSION['seccion']) && $_SESSION['seccion'] == minusculas($this->nombre_enlace))
  48.         {
  49.             return '<li class="seccion_activa">';
  50.         }
  51.         else
  52.         {
  53.             if (isset($_GET['seccion']) && $_GET['seccion'] == minusculas($this->nombre_enlace))
  54.             {
  55.                 $_SESSION['seccion'] = $_GET['seccion'];
  56.                 return '<li class="seccion_activa">';
  57.             }
  58.             else
  59.             {
  60.                 return '<li>';
  61.             }
  62.         }
  63.     }
  64.    
  65.     //Construimos el menu en funcion a lo que devuelve la variable nivel y a las variables para seccion y subseccion
  66.     private function construyo_menu()
  67.     {
  68.         $inicio = $this->seccion_activa();
  69.         echo $inicio.'<h3><a href="'.$this->ruta.'?'.$this->var_get.'">'.$this->nombre_enlace.'</a></h3>';
  70.     }
  71.  
  72.     private function construyo_submenu()
  73.     {
  74.         echo '<li><h4><a href="'.$this->ruta.'?'.$this->var_get.'">'.$this->nombre_enlace.'</a></h4></li>';
  75.     }
  76. }

Y la forma de llamarla, esta:

Código PHP:
Ver original
  1. <ul>
  2.         <?php
  3.         //4 variables: 1ª:Ruta. 2ª:Variables get. 3ª:Nombre menu. 4ª:Variable opcional: Si queremos mostrar el menu en funcion del nivel del usuario, ponemos 1, si no, no ponemos nada.
  4.         $menu_lat_izqdo = new menu();
  5.         $menu_lat_izqdo->imprimir_menu('../../paginas/cuentas/cuentas.php','seccion=cuentas&subseccion=cuentas','Cuentas');
  6.             echo '<ul>';
  7.                 $menu_lat_izqdo->imprimir_submenu('../../paginas/cuentas/cuentas.php','seccion=cuentas&subseccion=cuentas','Cuentas');
  8.                 $menu_lat_izqdo->imprimir_submenu('../../paginas/cuentas/cuentas.php','seccion=cuentas&subseccion=cuentas','Cuentas');
  9.         echo '</ul>';
  10.         echo '</li>';
  11.         $menu_lat_izqdo->imprimir_menu('../../paginas/cuentas/busquedas.php','seccion=busquedas&subseccion=busquedas','Busquedas');
  12.         ?>
  13.   </ul>

Lo importante son los metodos construyo_menu, construyo submenu y la forma de llamarlos.

La idea es quitar, cuando llamo a los menus, los echo <ul>, echo </ul> y echo </li> e incluirlos en la clase, pero despues de darle muchas vueltas, no veo la forma, por eso recurro a vosotros.

Gracias. Un saludo.
  #2 (permalink)  
Antiguo 12/09/2011, 11:22
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: Modificar forma de llamar a una clase de un menu

En la clase deberías evitar declarar las etiquetas, ya que en un futuro puede que cambie la forma de como quieres que se vea. Lo que puedes hacer es almacenar los resultados en un array y luego con foreach lo llamas en la plantilla.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 12/09/2011, 11:36
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años, 6 meses
Puntos: 6
Respuesta: Modificar forma de llamar a una clase de un menu

Hola. Gracias por tu respuesta.

Estudiaré el consejo que me has dado sobre las etiquetas.

En cualquier caso, almacenar los resultados en un array lo pensé, y me funciona si el menu es lineas, es decir:

menu 1
menu 2
menu 3.

Pero si el menu es

menu 1
menu 1.1
menu 1.2
menu 2
menu 2.2
etc.

No veo la forma de saber que los menus 1.1 y 1.2 corresponden al menu 1 y no al dos.

Espero haberme explicado.

Un saludo.
  #4 (permalink)  
Antiguo 12/09/2011, 11:42
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: Modificar forma de llamar a una clase de un menu

Con array multidimensionales se puede, por ejemplo
Código PHP:
Ver original
  1. <?php
  2. $arr = array(
  3.     0 => array(
  4.         'foo',
  5.         'bar',
  6.         'baz',
  7.     ),
  8.     1 => array(
  9.         'candy',
  10.         'fruits',
  11.         'vegetable',
  12.     )
  13. );
  14. foreach($arr as $key => $val){
  15.     foreach($val as $k => $v){
  16.         echo "$v pertenece a $key<br />";
  17.     }
  18. }
  19. /**
  20.  * foo pertenece a 0
  21.  * bar pertenece a 0
  22.  * baz pertenece a 0
  23.  * candy pertenece a 1
  24.  * fruits pertenece a 1
  25.  * vegetable pertenece a 1
  26.  */
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 12/09/2011, 11:43
Avatar de bet7o  
Fecha de Ingreso: febrero-2010
Ubicación: DF
Mensajes: 315
Antigüedad: 14 años, 10 meses
Puntos: 20
Respuesta: Modificar forma de llamar a una clase de un menu

Te dejo esto espero te sirva.

http://www.forosdelweb.com/f18/mostr...ursiva-932325/

Saludos!
__________________
Pero el no contaba con una cosa, mi peligroso desinteres por la vida humana
  #6 (permalink)  
Antiguo 12/09/2011, 11:53
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años, 6 meses
Puntos: 6
Respuesta: Modificar forma de llamar a una clase de un menu

De acuerdo, voy a probar a ver, aunque no se que me saldrá
  #7 (permalink)  
Antiguo 12/09/2011, 14:39
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años, 6 meses
Puntos: 6
Respuesta: Modificar forma de llamar a una clase de un menu

Hola de nuevo.

Siguiendo el ejemplo que facilito abimaelrc, he creado esta pagina

Código PHP:
Ver original
  1. <html>
  2. <head>
  3. <title>Pruebas</title>
  4. </head>
  5. <body>
  6. <?php
  7. class Menu {
  8.    
  9.     private $arr = array(array());
  10.  
  11.     public function miopcion($a,$b)
  12.     {
  13.         $this->arr[]=$a;
  14.         $this->arr[$a][]=$b;
  15.     }
  16.    
  17.     public function muestro_miopcion()
  18.     {
  19.         foreach($this->arr as $key => $val)
  20.         {
  21.             foreach($val as $k => $v)
  22.             {
  23.                 echo $key.'<br/>';
  24.                 echo $v.'<br/>';
  25.             }
  26.         }
  27.     }
  28. }
  29.  
  30. $menu1=new Menu();
  31.  
  32. $menu1->miopcion('hola','uno');
  33. $menu1->miopcion('hola','dos');
  34. $menu1->miopcion('hola','tres');
  35. $menu1->miopcion('adios','primero');
  36. $menu1->miopcion('adios','segundo');
  37.  
  38. $menu1->muestro_miopcion();
  39. ?>
  40. </body>
  41. </html>

La idea es que me muestre los datos asi
hola
uno
dos
tres
adios
primero
segundo

pero a parte de mostrarlos así, me da un error en el segundo foreach que dice Invalid argument supplied for foreach()

A ver si me podeis ayudar.

Gracias. Un saludo.
  #8 (permalink)  
Antiguo 12/09/2011, 15:29
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: Modificar forma de llamar a una clase de un menu

Verifica la variable que declaras en el segundo foreach, usa var_dump.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #9 (permalink)  
Antiguo 12/09/2011, 15:52
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años, 6 meses
Puntos: 6
Respuesta: Modificar forma de llamar a una clase de un menu

Hola. Gracias de nuevo por tu respuesta

Ahora lo tengo así

Código PHP:
Ver original
  1. <html>
  2. <head>
  3. <title>Pruebas</title>
  4. </head>
  5. <body>
  6. <?php
  7. class Menu {
  8.    
  9. private $arr = array('menu1' => array('1.1','1.2','1.3',),'menu2' => array('2.1','2.2','2.1',));
  10.        
  11.  
  12.     public function miopcion($a,$b)
  13.     {
  14.         $this->arr[]=$a;
  15.         $this->arr[$a][]=$b;
  16.     }
  17.    
  18.     public function muestro_miopcion()
  19.     {
  20.             var_dump($this->arr);
  21. /*        foreach($this->arr as $key => $val)
  22.         {
  23.             foreach($val as $k => $v)
  24.             {
  25.                 echo $key.'<br/>';
  26.                 echo $v.'<br/>';
  27.             }
  28.         }*/
  29.     }
  30. }
  31.  
  32. $menu1=new Menu();
  33.  
  34. /*$menu1->miopcion('hola','uno');
  35. $menu1->miopcion('hola','dos');
  36. $menu1->miopcion('hola','tres');
  37. $menu1->miopcion('adios','primero');
  38. $menu1->miopcion('adios','segundo');*/
  39.  
  40. $menu1->muestro_miopcion();
  41. ?>
  42. </body>
  43. </html>

Pero es que no se como ir llenando los arrays cuando instancio la clase
  #10 (permalink)  
Antiguo 13/09/2011, 00:04
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años, 6 meses
Puntos: 6
llenar array multidimensional en clase

Hola.

Tengo este codigo

Código PHP:
Ver original
  1. <html>
  2. <head>
  3. <title>Pruebas</title>
  4. </head>
  5. <body>
  6. <?php
  7. class Menu {
  8.    
  9.         private $nacho=array();
  10.  
  11.         public function cargar($a)
  12.         {
  13.             $this->nacho[] = $a;
  14.         }
  15.        
  16.         public function mostrar ()
  17.         {
  18.             for ($i=0;$i<count($this->nacho);$i++)
  19.             {
  20.                 echo $this->nacho[$i].'<br>';
  21.             }
  22.         }
  23. }
  24.  
  25. $menu1=new Menu();
  26.  
  27. $menu1->cargar('aaaaa');
  28. $menu1->cargar('bbbbb');
  29. $menu1->cargar('ccccc');
  30.  
  31.  
  32. $menu1->mostrar();
  33. ?>
  34. </body>
  35. </html>

Voy cargando los valores de un array normal y me los muestra.

Lo que quiero es, al array aaaaa, poder cargarle valores para quede
aaaaa
aaaa1
aaaa2
bbbbb
bbbb1
ccccc
cccc1
cccc2

Pero no se como hacerlo en esta clase que os he puesto.

Un saludo.
  #11 (permalink)  
Antiguo 13/09/2011, 00:43
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 14 años, 3 meses
Puntos: 331
Respuesta: llenar array multidimensional en clase

Si lo que quieres es numerar los elementos que vas agregando al array, entonces utiliza la función count() para saber el indice siguiente y hacer algo así:
Código PHP:
Ver original
  1. #
  2. public function cargar($a)
  3.         {
  4.             $nextIndex = count($this->nacho) + 1;
  5.             $this->nacho[] = $a.$nextIndex;
  6.         }

No estoy seguro de haber entendido la pregunta, espero que sirva, salu2
__________________
Fere libenter homines, id quod volunt, credunt.
  #12 (permalink)  
Antiguo 13/09/2011, 00:48
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 5 meses
Puntos: 793
Respuesta: llenar array multidimensional en clase

Lo que yo entendí es que quieres ordenar el array ejemplo creas el método para ordenarlo:

Código PHP:
Ver original
  1. private function ordenarNacho() {
  2.         return usort($this->nacho, function ($a, $b) {
  3.             return strcmp($a, $b);
  4.       });
  5. }

y lo llamas en el método mostrar

Código PHP:
Ver original
  1. $this->ordenarNacho();

PD: Si no te funciona consulta sobre los closures

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #13 (permalink)  
Antiguo 13/09/2011, 02:30
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años, 6 meses
Puntos: 6
Respuesta: llenar array multidimensional en clase

Hola, Gracias por vuestras respuestas, pero no me he explicado bien.

Lo que quiero es tener un array con el valor aaaa

A este array, añadirle otro array con los valores aaa1, aaa2, aaa2, pero todos que pertenezcan al array aaaa

El fin de todo esto es crear un menu mas o menos así.

<ul>
<li>aaaa
<ul>
<li>aaa1</li>
<li>aaa2</li>
<li>aaa3</li>
<ul
</li>
<li>bbbb
<ul>
<li>bbbb
etc etc etc.
  #14 (permalink)  
Antiguo 13/09/2011, 07:04
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 14 años, 3 meses
Puntos: 331
Respuesta: llenar array multidimensional en clase

Entonces necesitas crear un array multimensional de la forma

Código PHP:
Ver original
  1. $array['aaaa'][0] = "aaaa1";
  2. $array['aaaa'][0] = "aaaa2";
  3. $array['bbbb'][1] = "bbbb1";
  4. $array['bbbb'][0] = "bbbb2";

Entonces el métido sería algo así:

Código PHP:
Ver original
  1. public function cargar($array, $elemento){
  2.      $this->nacho[$array][0] = $elemento;
  3. }
Igual no entiendo si aaaa, aaa1, aaaa2 es un criterio de ordenación o simplemente un ejemplo. De cualquier manera te hace falta otra dimensión. Salu2
__________________
Fere libenter homines, id quod volunt, credunt.
  #15 (permalink)  
Antiguo 13/09/2011, 14:13
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años, 6 meses
Puntos: 6
Respuesta: Modificar forma de llamar a una clase de un menu

Hola repara2, gracias por tu respuesta, pero nada, se me esta atragantando esto de los array muldimensionales

En base a tu respuesta, he puesto este codigo

Código PHP:
Ver original
  1. <html>
  2. <head>
  3. <title>Pruebas</title>
  4. </head>
  5. <body>
  6. <?php
  7. class Menu {
  8.    
  9.         private $nacho=array();
  10.  
  11.                 public function cargar($array, $valor, $elemento)
  12.                 {
  13.                     $this->nacho[$array][$valor] = $elemento;
  14.                 }
  15.        
  16.         public function mostrar ()
  17.         {
  18.                     //var_dump($this->nacho);
  19.             for ($i=0;$i<count($this->nacho);$i++)
  20.             {
  21.                 echo $this->nacho[$i].'<br>';
  22.             }
  23.         }
  24. }
  25.  
  26. $menu1=new Menu();
  27.  
  28. $menu1->cargar('aaaa',0,'a1');
  29. $menu1->cargar('aaaa',0,'a2');
  30. $menu1->cargar('aaaa',0,'a3');
  31. $menu1->cargar('bbbb',1,'b1');
  32. $menu1->cargar('bbbb',1,'b2');
  33. $menu1->cargar('bbbb',1,'b3');
  34.  
  35.  
  36. $menu1->mostrar();
  37. ?>
  38. </body>
  39. </html>

Pero tampoco me funciona
  #16 (permalink)  
Antiguo 13/09/2011, 18:36
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 5 meses
Puntos: 793
Respuesta: Modificar forma de llamar a una clase de un menu

Será esto lo que intentas hacer?

Código PHP:
Ver original
  1. <html>
  2. <head>
  3. <title>Pruebas</title>
  4. </head>
  5. <body>
  6. <?php
  7. class Menu
  8. {
  9.     private $nacho = array();
  10.    
  11.     public function cargar($array, $elemento) {
  12.         $this->nacho[$array][] = $elemento;
  13.     }
  14.    
  15.     public function mostrar() {
  16.         foreach ($this->nacho as $padre) {
  17.             echo '<ul>';
  18.             foreach ($padre as $hijo) {
  19.                 echo "<li>$hijo</li>";
  20.             }
  21.             echo '</ul>';
  22.         }
  23.     }
  24. }
  25.  
  26. $menu1 = new Menu();
  27.  
  28. $menu1->cargar('aaaa', 'a1');
  29. $menu1->cargar('aaaa', 'a2');
  30. $menu1->cargar('aaaa', 'a3');
  31. $menu1->cargar('bbbb', 'b1');
  32. $menu1->cargar('bbbb', 'b2');
  33. $menu1->cargar('bbbb', 'b3');
  34. $menu1->cargar('aaaa', 'a4');
  35.  
  36. $menu1->mostrar();
  37. ?>
  38. </body>
  39. </html>
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #17 (permalink)  
Antiguo 13/09/2011, 23:50
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años, 6 meses
Puntos: 6
Respuesta: Modificar forma de llamar a una clase de un menu

Hola.

Eso se parece mucho a lo que intento conseguir.

El resultado de tu codigo es
* a1
* a2
* a3
* a4

* b1
* b2
* b3

El objetivo a conseguir sería

* a1
*a11
*a12
*a13
* a2
* a3
*a31
*a32
* a4

* b1
* b2
*b21
*b22
* b3
  #18 (permalink)  
Antiguo 14/09/2011, 00:40
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 5 meses
Puntos: 793
Respuesta: Modificar forma de llamar a una clase de un menu

A ver si ahora te parece así

Código HTML:
Ver original
  1. <title>Pruebas</title>
  2. </head>
  3. <?php
  4. class Menu
  5. {
  6.    private $nacho = array();
  7.    
  8.    public function cargar($primero, $segundo, $tercero = null) {
  9.        $this->nacho[$primero][$segundo][] = $tercero;
  10.     }
  11.    
  12.     public function mostrar() {
  13.         echo '<ul>';
  14.         foreach ($this->nacho as $c1 => $arr1) {
  15.             echo '<li>';
  16.             echo $c1;
  17.             foreach ($arr1 as $c2 => $arr2) {
  18.                 echo '<ul><li>';
  19.                 echo $c2;
  20.                 foreach ($arr2 as $c3 => $arr3) {
  21.                     if ($arr3 != null) {
  22.                         echo "<ul><li>$arr3</li></ul>";
  23.                     }
  24.                 }
  25.                 echo '</li></ul>';
  26.                
  27.             }
  28.             echo '</li>';
  29.         }
  30.         echo '</ul>';
  31.     }
  32. }
  33.  
  34. $menu1 = new Menu();
  35. $menu1->cargar('aaaa', 'a1');
  36. $menu1->cargar('aaaa', 'a1', 'a11');
  37. $menu1->cargar('aaaa', 'a1', 'a12');
  38. $menu1->cargar('aaaa', 'a1', 'a13');
  39. $menu1->cargar('aaaa', 'a2');
  40. $menu1->cargar('aaaa', 'a3');
  41. $menu1->cargar('aaaa', 'a3', 'a31');
  42. $menu1->cargar('aaaa', 'a3', 'a32');
  43. $menu1->cargar('aaaa', 'a4');
  44. $menu1->cargar('bbbb', 'b1');
  45. $menu1->cargar('bbbb', 'b2');
  46. $menu1->cargar('bbbb', 'b2', 'b21');
  47. $menu1->cargar('bbbb', 'b2', 'b22');
  48. $menu1->cargar('bbbb', 'b3');
  49. $menu1->mostrar();
  50. ?>
  51. </body>
  52. </html>
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #19 (permalink)  
Antiguo 14/09/2011, 00:49
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años, 6 meses
Puntos: 6
Respuesta: Modificar forma de llamar a una clase de un menu

Hola.

Eso es lo que estoy buscando.

Una ultima pregunta.

Habrá menus que solamente tengan un nivel, es decir, que solamente sean aaaa o bbbb y que no tengan a1, a2, etc.

En este caso, le pongo como argumento segundo = null, como tu has hecho con el tercero, pero, el <li></li> me lo sigue mostrando, por lo que me deja un hueco libre.

A ver si me explico. Si tenemos esto.

aaaa
a1
a2
bbbb
b1
b2
cccc
dddd

Este este ejemplo, cccc no tiene hijos, pero me deja un hueco en blanco entre cccc y dddd.

Como puedo arreglar esto.

Gracias.
  #20 (permalink)  
Antiguo 14/09/2011, 00:55
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 5 meses
Puntos: 793
Respuesta: Modificar forma de llamar a una clase de un menu

Fuera de que no agradeces mis aportes pides y pides como si trabajara de cuenta tuya. Si lo deseas completo pásate por el área de Ofertas de Empleo y seguramente te lo podemos hacer a la medida.

PD: Ya con eso lo puedes hacer. Suerte
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP

Última edición por andresdzphp; 14/09/2011 a las 01:06
  #21 (permalink)  
Antiguo 14/09/2011, 01:31
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años, 6 meses
Puntos: 6
Respuesta: Modificar forma de llamar a una clase de un menu

Hola Andresdzphp

Siento que te hayas molestado por no haber complacido tu ego, pero si repasas cualquier de los post en los que participo, incluido este, lo primero que suelo hacer en un 90% de los casos es agradecer las respuestas de las personas que intervienen, sirvan o no.

Es cierto que, en tu caso, todavia no te habia agradecido tu aporte, ya que estaba a la espera de terminarlo, por lo que te pido disculpas, inecesarias, entiendo yo, pero bueno, si es tu deseo, no me importa complacerlo, faltaría mas.

Por ultimo, recordarte que, en este foro, que yo sepa, entra el que quiere y el que le dejan y contesta a preguntas el que quiere y el que le dejan y yo, personalmente, cuando hago un aporte, pues no espero a que nadie me lo agradezca, lo hago porque quiero y porque me apetece y ni mucho menos solicito remuneracion de cualquier tipo por ello.

En cualquier caso, lo dicho, siento haberte molestado y que te lleves una mala impresión por mi parte, ya que no era mi intencion.

Un saludo.

P.D.: Además, veo que ya te di las gracias a tu primera respuesta, no se que mas querías?, la verdad...
  #22 (permalink)  
Antiguo 14/09/2011, 10:12
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 5 meses
Puntos: 793
Respuesta: Modificar forma de llamar a una clase de un menu

Estamos para ayudarte con tus dudas NO para hacer TODO tu trabajo. Saludos
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP

Etiquetas: clase, html, llenar, modificar, multidimensional, variables, usuarios, formulario
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 16:32.