Foros del Web » Programando para Internet » PHP »

Nunca me plantee esto hasta que... mysql_fetch_array

Estas en el tema de Nunca me plantee esto hasta que... mysql_fetch_array en el foro de PHP en Foros del Web. Resulta que tengo que generar una tabla con celdas y columanas un tanto complicado en la que tengo que colocar datos tomados de la base ...
  #1 (permalink)  
Antiguo 22/01/2004, 06:08
 
Fecha de Ingreso: enero-2003
Mensajes: 122
Antigüedad: 14 años, 11 meses
Puntos: 1
Nunca me plantee esto hasta que... mysql_fetch_array

Resulta que tengo que generar una tabla con celdas y columanas un tanto complicado en la que tengo que colocar datos tomados de la base de datos:

Código PHP:
$sql mysql_query("
    SELECT
        dato1,
        dato2,
        dato3
    FROM
        tabla
    LIMIT
        5
"
);

$array mysql_fetch_array($sql);

// while($sql_array = fetch_array($sql) no se como seria por que si lo pondria NO me genera la tabla como lo deseo

$tabla "  <table>\n";

$tabla .= "     <tr>\n";
$tabla .= "      <td rowspan=\"3\">d1 " $array["dato1"] . " d2 " $array["dato2"] . " d3 " $array["dato3"] . "</td>\n";

// aqui necesito pasar a la otra fila tomada de la base de datos

$tabla .= "      <td>d1 " $array["dato1"] . " d2 " $array["dato2"] . " d3 " $array["dato3"] . "</td>\n";

// aqui necesito pasar a la otra fila tomada de la base de datos

$tabla .= "      <td>d1 " $array["dato1"] . " d2 " $array["dato2"] . " d3 " $array["dato3"] . "</td>\n";
$tabla .= "    </tr>\n";
$tabla .= "    <tr>\n";

// aqui necesito pasar a la otra fila tomada de la base de datos

$tabla .= "      <td colspan=\"2\">d1 " $array["dato1"] . " d2 " $array["dato2"] . " d3 " $array["dato3"] . "</td>\n";
$tabla .= "    </tr>\n";
$tabla .= "    <tr>\n";

// aqui necesito pasar a la otra fila tomada de la base de datos

$tabla .= "      <td colspan=\"2\">d1 " $array["dato1"] . " d2 " $array["dato2"] . " d3 " $array["dato3"] . "</td>\n";
$tabla .= "    </tr>\n";

echo 
$tabla
Comunmente generaba un bucle de esta forma para una tabla sensilla.

Código PHP:
$tabla "  <table>\n";

while(
$sql_array fetch_array($sql)){

    
$tabla .= "    <tr>\n";
    
$tabla .= "      <td>d1 " $array["dato1"] . " d2 " $array["dato2"] . " d3 " $array["dato3"] . "</td>\n";
    
$tabla .= "    </tr>\n";

}

$tabla .= "  </table>\n";

echo 
$tabla
Alguien que me pueda ayudar ...?

----------------------------------------------------------------

<?php

echo "HASTA LUEGO ";

?>
  #2 (permalink)  
Antiguo 22/01/2004, 06:17
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Explicacion de bucle while: para cada iteracion, primero ejecuta la "condicion", evalua si devuelve true o false, si es true ejecuta el codigo de dentro del while, y si es false pasa a ejecutar el codigo de despues del while. Es decir, en cada iteracion lo primero que ejecuta es la condicion, es decir, ejecuta el $array=mysql_fetch_array().

Y si miras el manual de mysql_fetch_array(), te pone que lee el registro actual, y mueve el puntero al siguiente registro.

Resumiendo: cuando quieras asignar a $array el siguiente registro, debes ejecutar el $array=mysql_fetch_array().

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
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 02:44.