Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Licznik
Misiek
post
Post #1





Grupa: Zarejestrowani
Postów: 70
Pomógł: 0
Dołączył: 18.09.2002
Skąd: Bochnia

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


Witam

Napisałem sobie skrypt: licznik, który ma zliczać odwiedzających tylko raz w danej sesji przeglądarki i nie zliczać jakiegoś tam IP. Wygląda on tak:

[php:1:684a84f5c6]<?php

session_start();

$ip = $REMOTE_ADDR;

if (!$licznik) {
if ($ip != '195.136.25.129') {
$plik = fopen ("pliki/licznik.txt", "r");
flock ($plik, 1);
$licznik = fgets ($plik, 100);
flock ($plik, 3);
fclose ($plik);
$licznik++;
$plik = fopen ("pliki/licznik.txt", "w");
flock ($plik, 2);
fputs ($plik, $licznik);
flock ($plik, 3);
fclose ($plik);
}
}

session_register ("licznik");

?>[/php:1:684a84f5c6]

Jak się wszyscy domyślają działa, ale dla register_globals = On. Próbowałem napisać go dla Off, ale jakoś nie udało mi się. Zamieniłem:

[php:1:684a84f5c6]<?php

$ip = $REMOTE_ADDR;

?>[/php:1:684a84f5c6]

na

[php:1:684a84f5c6]<?php

$ip = $_SERVER ['REMOTE_ADDR'];

?>[/php:1:684a84f5c6]

i

[php:1:684a84f5c6]<?php

if (!$licznik) {

?>[/php:1:684a84f5c6]

na

[php:1:684a84f5c6]<?php

if (!$_SESSION ["licznik"]) {

?>[/php:1:684a84f5c6]

i nie działa. Zlicza przy każdym odświeżaniu. Dlaczego?

Misiek
Go to the top of the page
+Quote Post
BzikOS
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 660
Pomógł: 0
Dołączył: 28.08.2002
Skąd: Starachowice

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


To jeszcze zamień:

[php:1:1d211c62dd]<?php
session_register ("licznik");
?>[/php:1:1d211c62dd]

na

[php:1:1d211c62dd]<?php
$_SESSION['licznik'] = True;
?>[/php:1:1d211c62dd]
Go to the top of the page
+Quote Post
Misiek
post
Post #3





Grupa: Zarejestrowani
Postów: 70
Pomógł: 0
Dołączył: 18.09.2002
Skąd: Bochnia

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


Oki. Dzięki. Działa Pomogłeś mi (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

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: 19.09.2025 - 22:45