PHP gevorderde |
|
Hallo
Ik heb een kalender functie en als er een bepaalde datum in een array is word deze dag aangeduid in een kleurtje, het probleem is dat als je een datum in de array aanwezig is die datum in elke maand word getoond ... weet iemand hiervoor een oplossing?
function printMaand($maand, $jaar) // Maand laten zien
{
$edag = eersteDagInMaand($maand, $jaar);
$ldag = dagenInMaand($maand, $jaar);
$rest = restDagen($edag, $ldag);
$vandaag = mktime(0,0,0,date('n',time()),date('d', time()), date('Y', time()));
$weekdag = array('Ma', 'Di', 'Wo', 'Do', 'Vr', 'Za', 'Zo');
$evenementen = array();
$q = mysql_query("SELECT * FROM evenementen");
while($r = mysql_fetch_object($q)){
$evenementen[] = date("jmY",$r->EvenementDatum);
}
$kalender = "\n".'<table width="100%"><tr>';
foreach($weekdag as $dag)
{
$kalender .= '<td class="wday">'.$dag.'</td>';
}
$kalender .= '</tr><tr>'."\n";
for($i = 0; $i < ( $edag + $ldag + $rest ); $i++)
{
if($i < $edag || $i >= ( $edag + $ldag ))
{
$kalender .= '<td> </td>'."\n";
}
else
{
if(in_array(($i -($edag - 1)). date('m'). date('Y'), $evenementen) AND date('d', $vandaag) == ($i - ($edag - 1)) && date('m') == $maand && date('Y') == $jaar)
{
$kalender .= '<td class="specialday" onClick="window.location=\'?p=Kalender&Dag='.
strtotime(($i -($edag - 1)) ."-".$maand."-".$jaar) .
'\';">'. ($i -($edag - 1)) .'</td>'."\n";
} elseif(in_array(($i -($edag - 1)). date('m'). date('Y'), $evenementen))
{
$kalender .= '<td class="eventday" onClick="window.location=\'?p=Kalender&Dag='.
strtotime(($i -($edag - 1)) ."-".$maand."-".$jaar) .
'\';">'. ($i -($edag - 1)) .'</td>'."\n";
} elseif(date('d', $vandaag) == ($i - ($edag - 1)) && date('m') == $maand && date('Y') == $jaar)
{
$kalender .= '<td class="hday">'. ($i -($edag - 1)) .'</td>'."\n";
}
else
{
$kalender .= '<td>'. ($i -($edag - 1)) .'</td>'."\n";
}
if(($i + 1) % 7 == 0)
{
$kalender .= '</tr><tr>'."\n";
}
}
}
$kalender .= '</tr></table>';
return $kalender;
}
function printMaand($maand, $jaar) // Maand laten zien { $edag = eersteDagInMaand($maand, $jaar); $ldag = dagenInMaand($maand, $jaar); $rest = restDagen($edag, $ldag); $weekdag = array('Ma', 'Di', 'Wo', 'Do', 'Vr', 'Za', 'Zo'); $evenementen[] = date("jmY",$r->EvenementDatum); } $kalender = "\n".'<table width="100%"><tr>'; foreach($weekdag as $dag) { $kalender .= '<td class="wday">'.$dag.'</td>'; } $kalender .= '</tr><tr>'."\n"; for($i = 0; $i < ( $edag + $ldag + $rest ); $i++) { if($i < $edag || $i >= ( $edag + $ldag )) { $kalender .= '<td> </td>'."\n"; } else { if(in_array(($i -($edag - 1)). date('m'). date('Y'), $evenementen) AND date('d', $vandaag) == ($i - ($edag - 1)) && date('m') == $maand && date('Y') == $jaar) { $kalender .= '<td class="specialday" onClick="window.location=\'?p=Kalender&Dag='. strtotime(($i -($edag - 1)) ."-".$maand."-".$jaar) . '\';">'. ($i -($edag - 1)) .'</td>'."\n"; { $kalender .= '<td class="eventday" onClick="window.location=\'?p=Kalender&Dag='. strtotime(($i -($edag - 1)) ."-".$maand."-".$jaar) . '\';">'. ($i -($edag - 1)) .'</td>'."\n"; } elseif(date('d', $vandaag) == ($i - ($edag - 1)) && date('m') == $maand && date('Y') == $jaar) { $kalender .= '<td class="hday">'. ($i -($edag - 1)) .'</td>'."\n"; } else { $kalender .= '<td>'. ($i -($edag - 1)) .'</td>'."\n"; } if(($i + 1) % 7 == 0) { $kalender .= '</tr><tr>'."\n"; } } } $kalender .= '</tr></table>'; return $kalender; }
|