Dividir resultado de query MySQL por bloques con PHP

Qué pasa si tienes un query que te arrojara cierta cantidad de filas, y necesitas dividirlas en bloques de “X” cantidad. Esto, en mi caso lo utilice para hacer un slider con JQuery, para se precisos con el plugin de Cycle.

Se asume que ya tienen establecida una conexión con la base de datos, así que solo pondré el código desde el query. Una vez que lean lo siguiente, será muy fácil entenderlo, si tienen dudas por favor comenten.

$query = "SELECT * FROM tabla";
$result = mysql_query($query, $con) or die(mysql_error());
// aqui decidimos el tamaño de los bloques
$divider = 4;

if($result){
	$i=0;
	while ($row = mysql_fetch_assoc($result)) {
		if($i%$divider==0){
//aquí escribimos el principio de el bloque
			echo('<div>'."\n");
			echo('<ul>'."\n");
		}
		$i++;
//aquí escribimos el codigo que queremos repetir por la cantidad de elementos dentro del bloque, en este caso 4
		echo("<li>".strtoupper($row['name'])."</li>\n");

		if($i%$divider==0){
//aquí escribimos el cierre de el bloque
			echo('</ul>'."\n");
			echo('</div>'."\n");
		}
	}
}

Como se puede leer, el ejemplo es muy sencillo, pero nos puede servir para infinidad de cosas.

Suscribete ahora

Suscríbete y recibe información valiosa sobre UI, UX, CX y otras soluciones informáticas