Hola amigos,
Espero puedan ayudar, cree un calendario que me muestra los días del mes en su día correspondiente. Tengo una BD donde guardo notas (eventos) y lo que necesito es que si el mes y el año se encuentran en la BD el día de esa fecha me seleccione evento.
Al principio me funcionaba correctamente pero al agregar a mi consulta que la nota tiene que ser de estatus Apartado o Garantizado no me funciona del todo bien.
Aqui mi codigo
Código PHP:
Ver original// Seleccionar notas con el mes, año y estatus especificos
$query_eventos = mysql_query("SELECT * FROM calendario WHERE (month(fecha)=$mes AND year(fecha)=$anio) AND (estatus='Apartado' OR estatus='Garantizado')")or
die(mysql_error());
// Guardo mi info en Array
$eventos_en_bd[] = $eventos['fecha'];
}
// Funciones para tomar primer dia, ultimo dia y total de dias
$diames = 1;
$j=1; // dias que empieza a contarse el 1º + los dias del mes
while ($j < $total_dias) { // aqui empiezo a crear la tabla del calendario
foreach ($eventos_en_bd as $evento) { // Para cada array tomo mi calendario
// echo $dia_mes[2]; (aqui solo comprobe que realmente esten guardados en el array los días correspondientes a mi query, lo cual si me los toma correctamente)
echo "<tr> \n";
$i=0;
while ($i < 7) { // aqui verifico que sean los 7 dias de la semana
if ($j <= $numero_primer_dia) {
echo "<td style='background:#EEEEEE'></td> \n"; // sombrea días inútiles
} elseif ($diames > $ultimo_dia) {
echo "<td style='background:#EEEEEE'></td> \n"; // sombrea días inútiles
} else {
if ($diames == $dia_mes[2]) { // si el dia del mes esta en mi BD agrego la palabra Evento
echo " <td><a style=\"display:block;\">".$diames." Evento</a></td> \n";
$diames++;
} else {
echo " <td><a style=\"display:block;\">".$diames."</a></td> \n";
$diames++;
}
}
$i++;
$j++;
}
echo "</tr> \n";
}
}
En este caso mi variable $dia_mes[2] me muestra "05 12 27 05 12 27" y solo el 5 y 12 estan con Evento y me agrega una fila de mas sombreada, el 27 no me lo toma en cuenta para nada.
Lo curioso es cuando le quito a mi consulta el estatus, a todos los días "05 12 13 20 27" les agrega la palabra Evento sin ningún problema. ¿En qué estoy fallando?