Foros del Web » Programando para Internet » PHP »

Tablas horizontales PHP

Estas en el tema de Tablas horizontales PHP en el foro de PHP en Foros del Web. Hola chicos!! Vereis llevo horas intentando imprimir por pantalla datos de una tabla en php de forma horizontal pero por ahora me es imposible conseguirlo. ...
  #1 (permalink)  
Antiguo 20/12/2008, 20:41
 
Fecha de Ingreso: noviembre-2008
Mensajes: 9
Antigüedad: 15 años, 5 meses
Puntos: 1
Exclamación Tablas horizontales PHP

Hola chicos!!

Vereis llevo horas intentando imprimir por pantalla datos de una tabla en php de forma horizontal pero por ahora me es imposible conseguirlo. El problema real está en que los datos los obtengo de una base de datos y esos datos pueden variar osea que en todos los casos no se la cantidad de datos que espero por lo que no me vale hacer $var["algo"] así que lo que he hecho ha sido meterlo todo en un array e ir sacandolo con foreach pero el caso es que el array no está ordenado y al sacar los datos no se corresponden con las "cabeceras" de las tablas.

Osea, tengo un registro con estos datos en la base de datos: "rojo,azul" y luego otro "verde,rosa". Para que se pudieran sacar correctamente, en el array deberia aparecer: rojo,azul,verde,rosa pero lo que obtengo es primero los PRIMEROS campos de los registros: rojo,verde - azul,rosa, con lo que me es mas difícil ordenar esos datos ....

Alguna idea para meterlos "correlacionados" en el array??

saludines...
  #2 (permalink)  
Antiguo 20/12/2008, 21:17
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Tablas horizontales PHP

consulta las FAQ's y Aportes del foro...

http://www.forosdelweb.com/f18/aport...tablas-618528/
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 21/12/2008, 13:10
 
Fecha de Ingreso: noviembre-2008
Mensajes: 9
Antigüedad: 15 años, 5 meses
Puntos: 1
Exclamación Respuesta: Tablas horizontales PHP

gracias pero me acabo de dar cuenta de que todo se reduce a rellenar una tabla desde arriba hacia abajo de forma vertical con números consecutivos y no horizontal y repitiendo los mismos numeros en la columna .... cosa que no consigo con el ejemplo
  #4 (permalink)  
Antiguo 21/12/2008, 16:06
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Tablas horizontales PHP

bueno, el ejemplo es básico... para lo demás, hace falta creatividad... no mas!!!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 21/12/2008, 17:04
 
Fecha de Ingreso: noviembre-2008
Mensajes: 9
Antigüedad: 15 años, 5 meses
Puntos: 1
lo se, lo que pasa es que no se si era problema de mi capacidad, o que no era lo que iba buscando .... ya veo que es lo segundo. Me quedo mas tranquila.

PD: Cuando encuentre la solución la postearé


Un saludo!!

Bueno pues justo un rato después de postear el último mensaje deciros que ya he conseguido imprimir datos en un tabla horizontal con datos variables extraídos de una base de datos!!!!

La problemática real estaba en que en realidad no se sabe en primera instancia cuantos son los datos se van a extraer de la base de datos y cuando digo datos me refiero al nombre de las columnas que se usan posteriormente para extraer los datos de las celdas (filas) $var["nombre"].

Para tenerlos controlados una vez que se extraen al hacer el mysql_fetch_array los meto en un array y después los extraígo con el método que pongo a continuación, quedando a su vez ordenados en filas horizontales y no verticales como es comunmente:

$filas=3;
$columnas=7;

Código PHP:
        for ($ii=0;$ii<$filas;$ii++)
        {
            echo 
"<tr>";
        
            
$num=0;
            
$posicion=$ii;
            for (
$u=0;$u<$columnas;$u++)
            {
                
$pos=$posicion+$num;
                echo 
"<td>$d[$pos]</td>";
                
$num=$num+$filas;
            }

            echo 
"</tr>";
        } 
El código original era algo más largo pero lógicamente he intentado optimizarlo todo lo posible.
El código como pueden ver es muy simple, solo hay que hacer un bucle for para sacar las filas.
Inizializar la variable num a 0 que indica el desplazamiento en el array que sumado al número de filas es realmente "la mágia" que lo hace funcionar.
Se iguala la posición al incremento de $i y se crea otro bucle para generar las columnas.
Se mete en la variable $pos la posicion y el número y se imprime el array final con la posicion de $pos.
Luego se le suma a $sum su propio valor + el nº de la fila y ya lo tenemos.

Ojalá que esto sirva como aporte y le sirva a alguien y que se ahorre los 2 días que me ha tenido ocupada en solucionar esto ...

Un saludo

Última edición por GatorV; 22/12/2008 a las 14:47
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 20:28.