Exactamente. Quisiera, que por ejemplo, los eventos del 4, esten juntos, y que no se repita el bloque del 4.
Ahora, en la base de datos, la estructura es algo asi:
Código:
`id` int(11) NOT NULL AUTO_INCREMENT,
`mes` smallint(6) NOT NULL,
`dia` smallint(6) NOT NULL,
`evento` text NOT NULL,
`horario` text NOT NULL,
Esto, como dije en el mensaje anterior, lo hago pues es mas facil a la hora de ingresar en un formulario por medio de selects: en uno elijo el mes, y en otro la fecha, y listo.
Ahora, de esta BD, lo recupero de la siguiente forma:
Código PHP:
$mes_actual = $_GET['id'];
$query= "SELECT * FROM calendario WHERE mes = '$mes_actual' ORDER BY dia ASC";
$calendario = mysql_query($query, $conexion) or die(mysql_error());
$row_calendario = mysql_fetch_assoc($calendario);
Luego, en el cuerpo de mi pagina, hago un while de la siguiente forma:
Código PHP:
<? $i=0; // variable para alternar los colores de los bloques
if ($numero!=0){
do {?>
<div class="<? if ($i%2==0){echo "calen";}else{echo "calen_color";}?>"> // si $i es par, una clase CSS, sino otra.
<div class="numero"><img src="../images/calendario/<? echo $row_calendario['dia'];?>.gif"/></div> // aca, segun el dia que tenga el registro, la imagen que mostrare (este es el numero que se muestra en los bloques)
<div class="detalle">
<p class="color"><?echo $row_calendario['horario'];?></p>
<? if ($row_calendario['horario']==""){echo '<br/>';}?> // esto lo hago para que todos los elementos que no tienen un horario, queden alineados verticalmente.
<p><?echo $row_calendario['evento'];?></p> //imprimo el evento
</div>
</div>
<?;$i++; } while ($row_calendario = mysql_fetch_assoc($calendario));
}
else { echo 'No hay fechas disponibles para este mes.<br/><br/><br/>';}?>
Es medio rebuscado? Hasta ahora me ha dado resultado, salvo por el problemita este. La tabla es facil de modificar, y agiliza el calendario.
Bueno, eso es todo. Espero puedan ayudarme! ;)
Gracias,
Pablo.