Foros del Web » Programando para Internet » PHP »

extraer datos de mysql en forma ordenada por niveles

Estas en el tema de extraer datos de mysql en forma ordenada por niveles en el foro de PHP en Foros del Web. Tengo una tabla llamada "RED" con atributos username, num y patrocinador Como sacar datos así como esta con letras azul y verde, en este caso ...
  #1 (permalink)  
Antiguo 14/01/2014, 22:49
Avatar de soy_nicanor  
Fecha de Ingreso: mayo-2010
Mensajes: 374
Antigüedad: 13 años, 11 meses
Puntos: 3
extraer datos de mysql en forma ordenada por niveles

Tengo una tabla llamada "RED" con atributos username, num y patrocinador


Como sacar datos así como esta con letras azul y verde, en este caso quiero extraer hasta el nivel 5.

Código PHP:
Ver original
  1. $nivel1[1]="nicanor";      
  2.         $j=1;
  3.        
  4.         for($i=1;$i<=$j;$i++)
  5.         {
  6.             $resu1 = "SELECT * FROM red WHERE patrocinador ='".$nivel1[$i]."' ORDER BY num ASC";
  7.             $resultado1 = mysql_query($resu1, $conexio)or die(mysql_error());
  8.             $row1 = mysql_num_rows ($resultado1);
  9.             if ($row1 == 0)
  10.             {
  11.                     return false;              
  12.             }
  13.             else
  14.             {
  15.                 echo "<tr> <td>Nivel: ".$i."</td><td>";
  16.                 $j=0;
  17.                 while ($row1 = mysql_fetch_assoc($resultado1))
  18.                 {
  19.                     echo $row1['username']."<br>";
  20.                        
  21.                     $j=$j+1;
  22.                     $nivel1[$j]=$row1['username'];                                                 
  23.                 }
  24.                 echo $f;
  25.                 echo "</td></tr> ";
  26.             }
  27.         }

Me sale hasta el nivel 2
__________________
Muy Feliz
  #2 (permalink)  
Antiguo 14/01/2014, 23:23
 
Fecha de Ingreso: enero-2006
Mensajes: 199
Antigüedad: 18 años, 3 meses
Puntos: 5
Respuesta: extraer datos de mysql en forma ordenada por niveles

Código SQL:
Ver original
  1. ORDER BY num


Usar tablas esta algo obsoleto

yo pasaria todo a un array y lo ordeno a gusto pero con formato css
  #3 (permalink)  
Antiguo 15/01/2014, 00:35
 
Fecha de Ingreso: mayo-2013
Ubicación: Cúcuta
Mensajes: 98
Antigüedad: 10 años, 11 meses
Puntos: 2
Respuesta: extraer datos de mysql en forma ordenada por niveles

Ordenalos de acuerdo al criterio que estimes conveniente. Como el forero que ya te respondio usa

Código MySQL:
Ver original 

Para futuras ocasiones usa CSS en vez de tablas ya que las tablas ya no son estandar.
  #4 (permalink)  
Antiguo 15/01/2014, 02:19
 
Fecha de Ingreso: enero-2014
Mensajes: 75
Antigüedad: 10 años, 3 meses
Puntos: 11
Respuesta: extraer datos de mysql en forma ordenada por niveles

Cita:
$resu1 = "SELECT * FROM red WHERE patrocinador ='".$nivel1[$i]."' ORDER BY num ASC";
Ya está usando la clausula ORDER BY.

A ver nicanor, has pensado en el diseño de la aplicación antes de programarla? es decir, has pensado como tiene que trabajar el codigo antes de programarlo?, es bien sencillo mira:

1- Dentro de un bucle, for por ejemplo donde la variable de inicio sea = 1.
2- Creo la consulta sql usando WHERE num = $variable de inicio
3- ejecuto la consulta.
4- Recorro los resultados obtenidos, mostrando username ; patrocinador
5- El bucle continua hasta llegar al numero 5.

Y para que te quede aun mas claro:

Código PHP:
Ver original
  1. for($i = 1; $i <6 ; $i++){ //Se pone 6 para que así se quede en el numero 5
  2. //Se crea la consulta
  3. $sql = "SELECT * FROM tabla WHERE num = '$i'";
  4. //Se ejecuta la consulta
  5. $consulta = mysqli_query($conexion, $consulta);
  6. //Se extraen los datos de la consulta
  7. while($datos = mysqli_fetch_assoc($consulta)){
  8.      //Se muestran los datos obtenidos de la consulta
  9. }
  10.  
  11. }

Diseño señores, diseño antes de programar, hay una "norma" básica, el 70% del tiempo en realizar una aplicacion /script, debería estar en el diseño, no en la programación.

Saludos.

Etiquetas: forma, mysql, niveles, ordenada, select, sql, tabla
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 06:21.