PHP visitor counter

poruka: 4
|
čitano: 938
|
moderatori: XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
17 godina
neaktivan
offline
PHP visitor counter

Pokušavam napraviti skriptu koja će mi na stranicama brojitibroj posjetitelja.  Problem u kodu je taj što mi se brojač svaki puta resetira na 0, te prikazuje 1 posjet, Pretpostavljam da if petlja gdje se provjerava ima li što i fajlu nije dobro napisana?

 

evo koda:

 

<?php

$existCheck = "page_counter/".$Record['num']."hitcounter.txt";

$fileHandle = fopen($existCheck, 'w') or die("can't open file");

if ( '' == file_get_contents( $existCheck ) )

{

$br = "0";

fwrite($fileHandle, $br);

}

fclose($fileHandle);

 

$count_my_page = ("page_counter/".$Record['num']."hitcounter.txt");

$hits = file($count_my_page);

$hits[0] ++;

$fp = fopen($count_my_page , "w");

fputs($fp , "$hits[0]");

fclose($fp);

echo $hits[0];

?>

 

Igor
 
0 0 hvala 0
13 godina
neaktivan
offline
Re: PHP visitor counter

$fileHandle = fopen($existCheck, 'w') or die("can't open file");

 

ovdje otvarash fajl za pisanje, fajl se zakljuchava sve dok se ne zatvori sa fclose. file_get_contents nemozhe otvoriti fajl za chitanje te vracha false sto loose usporedbom stvarno je jednako praznom stringu.

Poruka je uređivana zadnji put ned 18.3.2012 7:25 (xin).
14 godina
protjeran
offline
PHP visitor counter

Kakvi su ti to text fileovi {#}

De ba, pa log-aj IP addresse, vrijeme i trpaj u bazu podataka. Nakon toga samo izvlačiš podatke van.

Fatanje IP adrese:


$ip = $_SERVER['REMOTE_ADDR'];

timestamp u unix obliku valjda znaš ? now()

Lulz is on lulz.
 
0 0 hvala 0
13 godina
neaktivan
offline
Re: PHP visitor counter

Zasto spremas posjete u fileove? Ako nemas neki poseban razlog najbolja opcija bi bila napraviti mysql bazu i spremati posjete, ip adrese i ostale stvari direktno u jednu tabelu u bazi. Puno je brze i lakse voditi evidenciju o samim posjetama.
Skripta ne treba biti komplikovana, mozes koristiti nesto tipa:


// definiraj sadasnji datum, xx.xxxx$datum = date("m.20y");// dodaj posjetu$q ="UPDATE statistika SET posjete=posjete+1 WHERE datum=$datum";mysql_query($q,$baza);
S tim da trebas uzeti u obzir da su ovo NE unikatne posjete, ukoliko zelis racunati unikatne posjete onda napravi i provjeru ip adrese svaki put prilikom pokretanja ove skripte i ako postoji posjeta sa tom adresom vec u bazi za taj datum ne dodaji novu posjetu...

Poruka je uređivana zadnji put sub 24.3.2012 12:12 (Majkilo).
1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice