Oto mój kod licznika na zliczanie odwiedzin w ciągu jednego DNIA:
(plik stan_d.n w pierwszej linii zawiera aktualny dzień, w drugiej linii- stan licznka na aktualny dzień):
<script language=php>
$file=fopen("./php/stan_d.n", "r+"); /* otwiera plik /
flock($file, 1); / blokuje plik /
$data=date("d");
$temp=fgets($file, 10);
$temp2=fgets($file, 10);
flock($file, 3); / odblokowuje plik /
fclose($file); / zamyka plik */
IF ($temp=$data)
{
$temp2++;
$file=fopen("./php/stan_d.n", "w");
flock($file, 1); /* blokuje plik /
fwrite($file, "$data\n");
fwrite($file, $temp2);
flock($file, 3); / odblokowuje plik /
fclose($file); / zamyka plik /
echo($temp2);
}
ELSE
{
$file=fopen("./php/stan_d.n", "w");
fwrite($file, "$data\n");
fwrite($file,"1");
flock($file, 3); / odblokowuje plik /
fclose($file); / zamyka plik */
echo("1");
}
</script>
I zawsze podwyższa wartość licznka, nawet jeśli będzie inny dzień - dlaczego??