Zdravím mám za úkol udělat kalendář. Má splňovat: Vypsat měsíc a rok, očíslovat týdny v měsících a tučně zvýraznit aktuální den.
Jsem na tom takhle:
<?php
$month = date('m');
//$month = 1;
$year = date('Y');
/*
$sekundy = mktime(0,0,0,$month,1,$year);
$datum = date("Y-m-t-w", $sekundy);
$rozsekane = explode("-",$datum);
list($year,$month,$count_days,$first) = $rozsekane;
*/
list($year,$month,$count_days,$first) = explode("-",date("Y-m-t-w", mktime(0,0,0,$month,1,$year)));
if ($first == 0) $first = 7;
$mesice = array("Leden","Únor","Březen","Duben","Květen","Červen","Červenec","Srpen","Září","Říjen","Listopad","Prosinec");
$tyden = 1;
?><table border="1">
<tr><td colspan="8" style="text-align: center;"><? echo $mesice[date("n")]." ".date("Y"); ?></td></tr><?
for($i=0;$i<6;$i++):
?><tr>
<td><? echo $tyden."."; $tyden++ ?></td>
<?
for($j=0;$j<7;$j++):
$day = $j + 7*$i - $first + 2;
?>
<td <? if($day == date("j")){echo "style='background: yellow; font-weight: bold;'";} ?>>
<? echo ($day > 0 and $day <= $count_days) ? $day : " "; ?>
</td>
<?
endfor;
?></tr><?
if(!checkdate($month, $day+1, $year)) break;
endfor;
?></table>
Jenže místo toho, aby se vůbec objevil kalendář se jen zobrazí deformovaná tabulka, ve které je "> 0 and $day <= $count_days) ? $day : " "; ?>". Kdyby mi někdo poradil, byl bych moc vděčný.