Hacer tablas dinamicas con PHP
Hace poco tue la necesidad de crear una tabla en forma dinamica y para serles sincero, pense que seria mucho mas dificil de lo que resulto siendo.
El ejemplo que les colocare a continuacion es bastante sencillo, como siempre, me gusta explicar las cosas de una manera que sea facil de entender y luego, cada uno de ustedes, intentara mejorarlo y acomodarlo de acuerdo a sus necesidad.
Basicamente, una tabla esta compuesta por filas (horizontales) y columnas (verticales) que cuando se cruzan, forman las llamadas celdas, en donde colocaremos nuestra informacion. Pero supogno que ustedes ya sabian eso ¿o no?
Si sabemos lo anterior, entonces no nos queda mas que indicarle al PHP cuantas filas debera colocar, y al mismo tiempo, indicarle cuantas celdas queremos que ponga por fila. Para ello, unas cuantas lineas de este codigo podra hacer el truco, luego se lo explico.
<table border="1" width="600px">
<?
for($i=0;$i<9;$i++) {
echo "<tr>";
for($j=0;$j<4;$j++) {
echo "<td>celda $j";
}
}
?>
</table>
Y con eso esta listo, bueno esta bien, se los voy a explicar. la primera linea, es para indicarle al navegador, que lo que viene a continuacion es una tabla, asique, debe estar atento. Luego, colocamos la apertura para PHP y acto seguido, viene un FOR. en este caso, estamos haciendo una tabla con 9 filas (de la fila 0 a la 8, si queremos mas o menos filas, solo debemos modificar el 9 por el numero deseado). La cuarta linea, es un echo, que imprimira la etiqueta tr, que no sirve para mas que para crear la fila en una tabla.. La linea siguiente es la que hace el truco para las celdas, en este caso, estamos creando 4 celdas por fila, es decir, 4 columnas (si deseamos mas o menos celda, solo hay que cambiar el 4 por el numero deseado).
Lo que sigue es un echo, que nos imprimira la etiqueta td (la que sirve para crear las celdas en una tabla) y en este caso, estamos imprimiendo en pantalla el numero de celda (celda $j, que tomara los valores 0, 1, 2, 3, 4) Finalmente cerramos los 2 for que tenemos abiertos, cerramos el PHP con la etiqueta de cierre y por ultimo cerramos la tabla.
Como veran, es un ejemplo muy sencillo, pero a la vez muy practico, para aprender a crear tablas de forma dinamica. ¿Porque no la hice estatica? pues ahora imaginense lo siguiente. Queremos hacer una tabla donde se muestren todas la imagenes de una carpeta, de la cual no sabemos la cantidad de elementos que contiene. Pues simplemente, contamos la cantidad de esos elementos, los dividimos por la cantidad de columnas que deseamos tener y hacemos asi nuestra tabla dinamica. Eso se los dejo de tarea
Salu2
Fecha: 19 / 05 / 08

























Hombre la explicaciòn sencilla y practica.
Hola… interesante lo que publicas, pero, como podrÃas hacer una tabla con los datos de una tabla de una BD? en donde, los tÃtulos de las columnas sean los nombres de los campos y las celdas contengan sus valores? Estoy tratando de hacer ello y no logro hacerlo…
Saludos.
Capaz que la segunda parte de este tutorial te puede ayudar un poco mas http://blog.veperu.com/archives/210
Salu2
Y en que momento cierras la etiquetas de cierre de la celda y de la fila?????
Mira esto y ve la diferencia
<?
for($i=1;$i<=9;$i++){
if($i == 1 or $i == 4 or $i == 7 ){
echo ”;
}
echo ” . $i. ”;
if($i == 3 or $i == 6){
echo ”;
}
}
?>
Simon, aunque no contenga las etiquetas de cierre, el script funciona igual. No es necesario cerrar las celdas o las filas.
En cuanto a tu codigo, creo que mejor utiliza el blockquote entre [] (apertura y cierre) para que se pueda ver el codigo que pones ya que no se entiende nada.
salu2