Autor Zpráva
jirkaka
Profil *
Dobrý den mám problém s aktualizací dat.
nezobrazuje mi aktuální počet dní v únoru a možná i vjiných měsících.
Nevíte kde mám chybu.
Kod zde:

<?php

$programName = "KALENDÁŘ"; //definuji si proměnou pro název programu
echo "<h1>".$programName."</h1><br />"; //zde mi echo vypíše nadpisem h1 název programu z proměnné

$actualDate = date("j.m.Y H:i", Time()); //zjistí nám aktuální datum a čas nastavený na počítači
echo "Dnes je ".$actualDate."<br /><br />"; //vypíše nám dnes je den.měsíc.rok hodina:minut

$month = array("Leden", "Únor", "Březen", "Duben", "Květen", "Červen", "Červenec", "Srpen", "Září", "Říjen", "Listopad", "Prosinec"); //vytvořím si pole s názvy měsíců

echo "<ul>";

for ($i = 1;$i <= 12;$i++) //for cyklus pro měsíce
{
if($i == date("m"))
echo "<li><strong><font color='blue'>".$i." = ".$month[$i-1]."</font></strong>"; //vypíše do prvního li všechny měsíce a z pole bere názvy měsíců pro dánné $i
else
echo "<li>".$i." . ".$month[$i-1]; //vypíše nám číslo tečka měsíc

$tdays= date("t", strtotime("01-".$i."-".date("Y")."")); //příkaz t nám zobrazí počet dní pro vybraný měsíc, toto číslo si uložíme
echo "<ul>"; //seznam pro dny
for ($j = 1;$j <= $tdays;$j++) //for cyklus pro dny
{
if($i == date("m") && $j == date("d"))
echo "<li><strong><font color='blue'>".$j."</font></strong></li>";
else
echo "<li>".$j."</li>";
}
echo "</ul>"; //zavřu seznam pro dny
echo "</li>"; //zavřu seznam vždy po skončení danného měsíce
}
echo "</ul>";
?>
Tori
Profil
jirkaka:
Mně to funguje správně - co přesně vám zlobí?
JInak místo tohoto $month[$i-1] stačí nastavit pole s názvy měsíců, aby indexy začínaly jedničkou:
$month = array(1 => "Leden", "Únor", "Březen", "Duben", "Květen", "Červen", "Červenec", "Srpen", "Září", "Říjen", "Listopad", "Prosinec");
a pak psát normálně $month[$i]
Mastodont
Profil
Mně to taky funguje bez problémů.
jirkaka
Profil *
No já mám v měsíci únor stále 31 dní.
Nevím proč
jirkaka
Profil *
Jinak děkuju

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0