Foros del Web » Programando para Internet » PHP »

asignatura pendiente: registros en tablas

Estas en el tema de asignatura pendiente: registros en tablas en el foro de PHP en Foros del Web. buenas a todos llevo tiempo con esto del php, y con la ayuda de muchos de vosotros, he llegado a ir poco a poco creando ...
  #1 (permalink)  
Antiguo 08/11/2010, 03:33
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 3 meses
Puntos: 3
asignatura pendiente: registros en tablas

buenas a todos

llevo tiempo con esto del php, y con la ayuda de muchos de vosotros, he llegado a ir poco a poco creando mis pequeñas aplicaciones. pero hay una asignatura pendiente: los registros en columnas. es decir, con un while voy mostrando filas de una tabla, tantas como registros existen en la bd. pero ahora me gustaria ir pintando uno al lado del otro. es decir, si tengo una tabla de 1 fila y 2 columnas, que quedase una estructura asi:

usuario1 usuario2 usuario3
usuario4 usuario5 usuario6.....

y ahora lo que consigo es:

usuario1
usuario2
usuario3....

he visto manuales y demas. pero no me sale!! alguien que me ayude a cerrar esta asignatura pendiente¿¿¿

saludos!
  #2 (permalink)  
Antiguo 08/11/2010, 04:15
 
Fecha de Ingreso: mayo-2010
Mensajes: 23
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: asignatura pendiente: registros en tablas

Podrías combinar un while con un if que compruebe si es par, pero seguro que hay formas mejores.

<table>
<tbody>
<tr>

$tabla = usuarios;

$consulta=mysql_query("SELECT * FROM {$tabla} ORDER BY nombre");

while($row=mysql_fetch_array($consulta)){

$contador += 0;

if ($contador/2==0)

echo"<td align='center'>{$row['nombre']}</td></tr><tr>";

else {
echo"<td align='center'>{$row['nombre']}</td>";
}
}

if ($contador/2==0){}
else{
</tr>
}
</tbody>
<table>

Es super cutre, pero es lo único que se me ocurrió xD
  #3 (permalink)  
Antiguo 08/11/2010, 04:16
 
Fecha de Ingreso: marzo-2010
Ubicación: Barcelona
Mensajes: 657
Antigüedad: 14 años, 1 mes
Puntos: 26
Respuesta: asignatura pendiente: registros en tablas

Bueno, he aqui otra respuesta:

Código PHP:
<?php
$filas 
3;
$col 2;

echo 
"<table>";
for(
$x=0;$x<$filas;$x++){
    echo 
"<tr>";
    for(
$y=0;$y<$col;$y++){
        echo 
"<td>usuario</td>";
    }
    echo 
"</tr>";
}
echo 
"</table>";
?>
  #4 (permalink)  
Antiguo 08/11/2010, 04:23
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 3 meses
Puntos: 3
Respuesta: asignatura pendiente: registros en tablas

vallu.. no acabo de entender el funcionamiento de tu script. me explicas?

saludos!
  #5 (permalink)  
Antiguo 08/11/2010, 05:46
 
Fecha de Ingreso: marzo-2010
Ubicación: Barcelona
Mensajes: 657
Antigüedad: 14 años, 1 mes
Puntos: 26
Respuesta: asignatura pendiente: registros en tablas

Lo que hace mi script lo primero de todo es declarar el número de columnas y filas que quieres que tenga la tabla.

Habres el tag de la tabla y hacemos dos bucles uno dentro del otro. De tal manera que en el primer bucle se imprimiran las filas enteras. ¿Y como imprimo las columnas? con otro bucle, ya que sabiendo cuantas columnas tienes puedes hacer un for imprimiendo tantos usuarios como columnas tengas. Una vez se hayan impreso todos los usuario que caben en esa fila (tantos como columnas hayan) se acaba el 2º for, y vuelve al 1º, incrementando la $x. Y así hasta que finalize el numero de filas y columnas.

Los td y tr de dentro de los fors los utilizo para construir la tabla. Como ya he dicho el primer bucle construye las filas, asi que todo lo que hay dentro del 1º bucle irá dentro de un tr, mientras que el 2º bucle, al construir las columnas dentro de las filas, tendran que ir con td.

No soy bueno explicando estas cosas... pero espero haver podido aclarar un poco tus dudas :P

Etiquetas: registros, tablas
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 19:27.