Autor: Marek „cezi” Celarek

Przykład ten pokazuje jak napisać prosty skrypt który zlicza kliknięcia w banner. Do prawidłowego działania skryptu potrzebne jest utworzenie pliku counter.txt lub jakiegokolwiek innego. W tym pliku będą przechowywane kliknięcia.

<? 
if(file_exists("counter.txt")){ 
$file=fopen("counter.txt","r"); 
$licznik=chop(fgets($file,100)); 
$licznik++; 
fclose($file); 
$file=fopen("counter.txt","w"); 
fwrite($file,$licznik); 
fclose($file); 
} 
else{$file=fopen("counter.txt","w"); 
fwrite($file,"1"); 
fclose($file); 
} 
header("location:  http://www.cezi.prv.pl"); 
?> 

Zapisujemy np. jako click.php.

Linkujesz:

<a  href=click.php><img  [...]></a> 

Ten przykład będzie działał dla jednego bannera. Co zrobić jeśli chcesz zlinkować 5-10 bannerów i co za tym idzie adresy będą różne ?
Można to zrobić w ten sposób:

Przykład linkowania:

<a  href=click.php?url=www.cezi.prv.pl><img  [...]></a> 

Skrypt będzie wyglądał nieco inaczej tzn. nazwy plików będą generowane przez zmienna $url.

W tym przypadku nazwa pliku będzie taka: www.cezi.prv.pl.txt

<? 
if(file_exists("$url.txt")){ 
$file=fopen("$url.txt","r"); 
$licznik=chop(fgets($file,100)); 
$licznik++; 
fclose($file); 
$file=fopen("$url.txt","w"); 
fwrite($file,$licznik); 
fclose($file); 
} 
else{$file=fopen("$url.txt","w"); 
fwrite($file,"1"); 
fclose($file); 
} 
header("location:  http://$url"); 
?>

Teraz wystarczy linkować w podobny sposob.

<a href=click.php?url=www.pajaczek.pl><img [...]></a> 
<a href=click.php?url=www.cezi.prv.pl><img [...]></a> 
<a href=click.php?url=www.wp.pl><img [...]></a> 
itd...

W wersji PHP > 4 i wyższych rejestrowanie zmiennych globalnych defaultowo jest ustawione na OFF (wyłączone) – możesz to sprawdzić posyłając na serwer taki kod:

<? phpinfo(); ?> 

Jesli masz na On to wszystkie zmienne globalne tzn ciasteczka, zmienne systemowe, zmienne z tablicy POST oraz GET tak samo jak i sesje są widziane pomiędzy stronami. Natomiast jeśli admin dla zwiekszenia nieco bezpieczenstwa i uswiadomienia użytkownika wylaczy ten ficzer okazuje sie ze trzeba pamietac skad jest zmienna.
Więc $ciacho to teraz $HTTP_COOKIE_VARS[‚ciacho’]

Analogicznie z polami formualrza przeslanymi metoda post ( $HTTP_POST_VARS[‚poleformularza’] )
czy get ( $HTTP_GET_VARS[‚poleformularza’] ) lub $_POST[‚zmienna’]; czy $_GET[‚zmienna’];

Czyli w naszym przykładzie na samym początku piszesz:

$url=$_GET['url'] 

Przy okazji tego artykułu wytłumaczyłem zasaęe przesyłania zmiennych Kończąc dopiszę jeszcze to, że można nasze wartości trzymane w plikach posortować i zrobić taką małą tablice ststystyczną. Jeśli chodzi o bannery Flaszowe to w akcji klikniecia podać należy url do pliku click.php.

Nauczycielem to chyba nie zostane ale myślę że wszystko zrozumiałe.

Pozdrawiam,
Marek „cezi” Celarek