Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Odliczanie dni w których bedziemy w szkole
skubekk
post
Post #1





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 8.08.2003
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


Napisałem skrypt który odlicza dni robocze do pewnej daty. W moim przypadku są to dni do konca roku szkolnego. biggrin.gif Można w nim uwzględnić święta i inne wolne dni.
Może sie komuś przyda... laugh.gif

[php:1:5a1fad6f30]<?php
###Skrypt by .::SkUbEkK::.####
###Uszanuj moją prace i niekasuj tego komentarza###

$koniec_mk = mktime (0,0,0,6,25,2004);
$koniec_data = getdate($koniec_mk);
$koniec = $koniec_data[mday]." || ".$koniec_data[mon]." || ".$koniec_data[year];

##############Święta i inne dni wolne od szkoły#################
$wolne[] = "8 || 4 || 2004";
$wolne[] = "9 || 4 || 2004";
$wolne[] = "12 || 4 || 2004";
$wolne[] = "30 || 4 || 2004";
$wolne[] = "3 || 5 || 2004";
$wolne[] = "3 || 5 || 2004";
$wolne[] = "5 || 5 || 2004";
$wolne[] = "6 || 5 || 2004";
$wolne[] = "1 || 6 || 2004";
$wolne[] = "10 || 6 || 2004";
#################################################################
$ile_wolne=count($wolne);

$data = getdate();
$tablica_data = $data[mday]." || ".$data[mon]." || ".$data[year];

$oki = 0;
if($koniec >= $tablica_data){
while ($oki!=1)
{
$start = mktime(0,0,0,$data[mon],$data[mday],$data[year]);

for($i=$data[mday]; $i <= date(t,$start); $i++)
{
$start_dzien = mktime(0,0,0,$data[mon],$i,$data[year]);
$dzien = getdate($start_dzien);
$sprawdzany_dzien = $dzien[mday]." || ".$dzien[mon]." || ".$dzien[year];

for($x=0; $x<=$ile_wolne; $x++)
{
if ($wolne[$x] == $sprawdzany_dzien)
{
$zle++;
}
}

if ($dzien[wday] != "0" AND $dzien[wday] != "6")
{
$tablica_dni[]= $dzien[mday]." || ".$dzien[mon]." || ".$dzien[year];

if ($koniec == $sprawdzany_dzien)
{
echo "Do końca roku szkolnego pozostało:<b> ";
$ile_dni_do_konca = count($tablica_dni)-$zle;
echo $ile_dni_do_konca-1;
$oki=1;
echo " </b>dni w których będziemy w szkole<br>";
break;
}
}
}

$data[mon]++;
$data[mday]=1;

if ($data[mon]==13)
{
$data[mon] =1;
$data[year]++;
}

}

$tydzien = $ile_dni_do_konca/5;
$tydzien =explode(".", $tydzien);
$tydzien = $tydzien[0];
echo "czyli:<b> ".$tydzien."</b> tygodni nauki";
}else{echo "Rok szkolny już się skończył!!!";}
?>
[/php:1:5a1fad6f30]

EDIT: Skrypt został poprawiony.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 18:07