Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Licznik dla każdej podstrony, Licznik dla każdej podstrony
VanGraaaf
post
Post #1





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 19.10.2008

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


Witam !

Jestem pierwszy raz na tym forum, więc jeśli zrobiłem coś nie tak darujcie mi (IMG:http://forum.php.pl/style_emoticons/default/happy.gif)

Mój problem jest następujący, otóż buduje serwis który jak na razie będzie miał tylko 20 podstron.
Zależy mi na tym aby prowadzić statystykę odsłon oddzielnie dla każdej z nich, a nie np. tylko dla strony głównej. W PHP raczkuje ale domyślam się że coś takiego jest możliwe, nie chcę korzystać z serwisów statystyk ponieważ nie lubię iść na łatwiznę no i wolę odrobinę niezależności.

Jak na razie mam skrypt operujący na pliku tekstowym ale niestety działa tylko na stronie głównej a na podstronach wartość jest ciągle ta sama czyli 0 (IMG:http://forum.php.pl/style_emoticons/default/sciana.gif) , choć oczywiście zrobiłem oddzielny plik tekstowy dla każdej podstrony zmieniłem w kodzie jego nazwę oraz nazwę strony do której się odnosi ale nic to nie dało. Myślałem że może trzeba zrobić coś ze zmienną $dane ale jak już pisałem raczkuje w PHP i pewnie narobiłbym tylko błędów.

Oto skrypt:

Kod
<?php
     if((!isset($_COOKIE['licznikowe-ciacho'])) && (!strstr($_SERVER['HTTP_REFERER'], "adres twojej strony")))

               { $plik = fopen("liczniki/index.txt", "r");
         $tekst = fread($plik, filesize("liczniki/index.txt"));
         $dane = explode(";", $tekst);
         fclose($plik);
         $plik = fopen("liczniki/index.txt", "w");
         flock($plik, 2);
         $dane[0]++;
         fwrite($plik, "$dane[0];", 15);
         flock($plik, 3);
         fclose($plik);
         setcookie("licznikowe-ciacho", "zliczono", time()+86400); }

     else  { $plik = fopen("liczniki/index.txt", "r");
         $tekst = fread($plik, filesize("liczniki/index.txt"));
         $dane = explode(";", $tekst); }
?>
</b><b>


na samym początku dokumentu przed <head>( gdyż jest to strona w html-u lecz z rozszerzeniem *php ) i w sekcji <body> :

Kod
<?php echo($dane[0]); ?>
</b><b>


Podobny problem mam również ze skryptem liczącym czas ładowania strony " Strona wygenerowana w czasie ... " - działa tylko na stronie głównej (IMG:http://forum.php.pl/style_emoticons/default/sciana.gif)

Kod
<?php
         function pobierz_microczas()

               { list($msek, $sek) = explode(" ", microtime());
                 return ((float)$msek + (float)$sek); }

                 $czas_poczatku = pobierz_microczas();
?>
</b><b>


przed <head> i w <body> :

Kod

<?php
                 $czas_konca = pobierz_microczas();
                 $czas_trwania = round($czas_konca - $czas_poczatku, 2);

         echo 'Strona wygenerowana
w czasie :'.$czas_trwania.' sek.';
?>
</b><b>


Bardzo proszę o pomoc !

Pozdrawiam !


Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
guilty82
post
Post #2





Grupa: Zarejestrowani
Postów: 176
Pomógł: 31
Dołączył: 26.03.2007

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


Jeśli ";" to ma byc separator to nie
  1. <?php
  2. fwrite($plik, "$dane[0];", 15);
  3. ?>

a
  1. <?php
  2. fwrite($plik, $dane[0].";", 15);
  3. ?>
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 23.08.2025 - 04:23