Comunidad de diseño web y desarrollo en internet online

esquema numèrico desde php

Citar            
MensajeEscrito el 23 Jul 2010 12:38 pm
Hola a todos, estoy buscando la manera de numerar el resultado de este codigo.
el resultado del codigo seria el de un esquema numerico pero sin los numeros.
ej:
1. animales
1.1.Carnivoros
1.2.Hervivoros
1.2.1.Mamiferos
1.2.2.Amfibios
...

Código PHP :

function sacarHijos($id_padre, $nivel)
   {
       $result = mysql_query("SELECT id, definicio, enllaç FROM familia_flor WHERE enllaç=$id_padre");
    
       if(mysql_num_rows($result))
       {
       $nivel=$nivel.'--';
       while($d = mysql_fetch_row($result))
       {
           //Imprimimos arbol de categorías
           echo '<option value="'.$d[0].'">'.$nivel.'> '.$d[1].'</option>';
    
           //Llamamos nuevamente a la función para que imprimas otros hijos
           sacarHijos($d[0], $nivel);
       }
       }
   }
   sacarHijos(0,'');

Por barchero

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 23 Jul 2010 03:52 pm
mysql no te arroja un array multidimensional, por tanto hay que improvisar


imaginate una tabla asi:

  • id
  • nombre
  • alimentacion
  • id_padre // donde 0 on ull significa que es un tipo principal


entonces cuando recorramos este arreglo en php lo hacemos asi

Código PHP :

$retorno =array();
foreach($animales_consultados as $a){
$retorno[$a['id_padre']][$a['id']]['nombre']=$a ['nombre']; 
$retorno[$a['id_padre']][$a['id']]['alimentacion']=$a ['alimentacion']; 
}


ahora retorno tendrá el array multidimensioanl que necesitas y con solo 1 consulta ;)

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 23 Jul 2010 06:39 pm
Gracias por tu ayuda Inyaka, pero la parte que no consigo descubrir como hacerla es la numeracion del resultado de el codigo que adjunto.
La numeracion tendria que ser la de un esquema numerico.
Ya que en la tabla tengo categorias y subcategorias.

Por barchero

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 23 Jul 2010 07:35 pm
eso si que es muy complejo ....



nah, es mas facil que estafar un gringo XD


en html

Código HTML :

<ol>
<li>1 </li>
<li>2 
 <ol>
    <li>2.1 </li>
 </ol>
</li>
</ol>


php:

Código PHP :

foreach($animales as $i=> $a){
echo 'estamos en el vector '.$i
}

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 23 Jul 2010 08:36 pm
Perdona mi ignorancia Inyaka, pero siempre me ha costado bastante entender el maldito foreach.
Si me lo pudieras explicar otra vez a un nivel de novato, te estaria muy agradecido.
Como punto de partida, yo tengo un numero que me indica la cantidad de tabulaciones que tiene dependiendo de a què nivel esta la categoria.
Por ejemplo:
1 -> Principal.
2 -> Subcategoria del menu principal.
2 -> Subcategoria 2 del menu principal
3 -> Subcategoria de la subcategoria del menu principal-
1 -> Otro menu principal.

como dicen que una imagen vale mas que mil palabras, aqui te dejo el resultado de el codigo del que ya te he hablado.

Por barchero

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 23 Jul 2010 09:11 pm
no entiendo si tu problema es a nivel de vista o de logica , si lo que quieres es mostrar correctamente los datos al usuario usa listas y sub listas de html, tanto ordenadas(<ol>) como no ordenadas(<ul>), si quieres entender mejor como funciona foreach lee las referencias de php

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox

 

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