Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Licznik gości
Forum PHP.pl > Forum > PHP
cameloos
  1. <?php
  2. function polnoc() /* odmierza ile sekund od danej chwili jest do konca dnia*/
  3. {
  4.  $teraz = date("H:i:s");
  5.  $czas = explode(":", $teraz);
  6.  $godziny = 23-$czas[0];
  7.  $minuty = 59-$czas[1];
  8.  $sekundy = 59-$czas[2];
  9.  $waznosc = $godziny*3600 + $minuty*60 + $sekundy;
  10.  return $waznosc;
  11. }
  12.  
  13. if((!isset($_COOKIE['licznik'])) && (!strstr($_SERVER['HTTP_REFERER'], "www.przystanekmama.yoyo.pl")))
  14. {
  15.  
  16. $plik = fopen("licznik.txt", "r");
  17. $tekst = fread($plik, filesize("licznik.txt"));
  18. $dane = explode(";", $tekst);
  19. fclose($plik);
  20. $plik = fopen("licznik.txt", "w");
  21. flock($plik, 2);
  22. $dane[0]++;
  23. fwrite($plik, "$dane[0];", 15);
  24. flock($plik, 3);
  25. fclose($plik);
  26.  
  27.  setcookie("licznik", "zliczono", time()+polnoc()+30000 ); /* cookie blokuje licznik do konca doby */
  28. }else{
  29.  
  30. $plik = fopen("licznik.txt", "r"); /* obsluga licznika stalego*/
  31. $tekst = fread($plik, filesize("licznik.txt"));
  32. $dane = explode(";", $tekst);
  33. fclose($plik);
  34.  
  35. $dzienny=fopen("dzienny.txt","r"); /* obsluga licznika dziennego*/
  36. $dzienny_tekst =fread($dzienny, filesize("dzienny.txt"));
  37. $dane2 = explode(":", $dzienny_tekst);
  38. fclose($dzienny);
  39. }
  40. ?>
  41.  
  42. Licznik odwiedzin: <b><?php echo($dane[0]); ?></b>


W Internet Explorer, przy przechodzeniu na podstrony wywoływane poprzez ładowanie <b>include</b> do tabeli strony głównej, licznik zwiększa sie o kolejne wejścia. W Firefoxie jest OK. W czym może tkwić problem?

Problem rozwiązany.

Problem tkwił we fragmencie:
  1. <?php
  2. if((!isset($_COOKIE['licznik'])) && (!strstr($_SERVER['HTTP_REFERER'], "www.nazwa-strony.pl")))
  3. ?>


www.nazwa-strony.pl -> tu ma znajdować się dokładnie adres serwera, na którym znajduje się strona z licznikiem gości.
Babcia@Stefa
Nie rozumiem dobrze Twojego problemu, ale myślę że tkwi on w Cookies.
Internet Explorer to wredna przeglądarka koncernu Micro$oft, aby napisać stronę działającą pod IE trzeba się nieźle namęczyć...

Sprawdź Cookies, a także przetestuje na Operze.
Uważaj na użytkowników Opery, ja nie umiałem sobię poradzić z Cookies pod Operą, dlatego używam sesji...

Jeszcze raz mówię, Cookies jest po stronie przeglądarki, z tymi ciasteczkami po kombinuj.

Dziękuję, Babcia@Stefa
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.