Ver Mensaje Individual
  #2 (permalink)  
Antiguo 01/04/2008, 02:38
gary_qwerty
 
Fecha de Ingreso: abril-2008
Ubicación: Querétaro, Mexico
Mensajes: 44
Antigüedad: 16 años, 1 mes
Puntos: 2
Re: ayuda con un catalogo

hola Goomba:

sobre el problema que comentas, entiendo que quieres mostrar productos en una tabla, pero solamente tres por fila, verdad?

la forma de hacer esto es con las tablas de html:
Código HTML:
<table>
  <tr>
    <td>celda1</td><td>celda2</td><td>celda3</td>
  </tr>
</table> 

pero imaginate tener que escribir cada producto manualmente, desperdiciarias mucho tiempo. para solucionar esto, puedes usar ciclos en php, (ej. for) con esto, puedes simplificar la tarea, y ademas puedes rellenar las celdas dinamicamente.


aqui te dejo un codigo de ejemplo. espero lo entiendas y puedas utilizarlo:


Código:
<?php


// nuestro array de datos, puedes llenarlo de cualquier manera:
$productos = array("producto 1", "producto 2", "producto 3", "producto 4", "producto 5", "producto 6", "producto 7"); 


//CONFIGURACIONES DE IMPRESION:
$productos_por_fila = 3; // cuantos productos por fila quieres mostrar

$total_filas = ceil(count($productos) / $productos_por_fila); //saca el total de filas que imprimir

$producto_actual = 0; //se usará para saber que producto esta escribiendo


//COMIENZA A IMPRIMIR PRODUCTOS:
echo '<table border="1">'; // escribe etiqueta de html para crear una tabla


//INICIO DE CICLOS:
// este es nuestro primer cliclo, se ejecutara mientras aun alla filas que imprimir:
for($i = 1; $i <= $total_filas; $i++){
	echo '<tr>'; //escribe etiqueta html de fila
	
	//este es nuestro segundo ciclo, escribira el numero de productos por fila que hayas puesto arriba:
	for($j = 1; $j <= $productos_por_fila; $j++){
	
		//en caso de que se nos acaben los productos antes de terminar la fila, escribir celdas en blanco:
		if($producto_actual >= count($productos)){
			echo '<td>&nbsp;</td>'; //escribe celda en blanco
		}
		else{ //todavia hay productos que imprimir:
			echo '<td>'.$productos[$producto_actual].'</td>'."\n"; //imprime la celda con el producto
		}
		
		$producto_actual++; // incrementamos el contador, para imprimir el siguente producto.
	}
		
	echo '</tr>'; // imprime etiqueta html de fin de celda
}
//FIN DE CICLOS


echo '</table>'; //imprime etiqueta html de fin de tabla



//FIN DEL SCRIPT
?>

copialo, pegalo en tu editor, ejecutalo y ve lo que hace.


un saludo!
Carlos Alejandro