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 połączyć 5-10 bannerów i co za tym idzie, gdy ich 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 sposób.
<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 jest domyślnie ustawione na OFF (wyłączone) – możesz to sprawdzić przesyłając na serwer taki kod:
<? phpinfo(); ?>
Jeśli 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 zwiększenia nieco bezpieczeństwa i uświadomienia użytkownika, wyłączy tę funkcję, okazuje się, że trzeba pamiętać, skąd jest zmienna.
Więc $ciacho to teraz $HTTP_COOKIE_VARS[’ciacho’]
Analogicznie z polami formularza przesłanymi 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 zasadę przesyłania zmiennych. Kończąc dopiszę jeszcze to, że można nasze wartości trzymane w plikach posortować i zrobić taką małą tablice statystyczną. Jeśli chodzi o bannery Flash, to w akcji kliknięcia podać należy url do pliku click.php.
Nauczycielem, to chyba nie zostanę, ale myślę że wszystko zrozumiałe.
Pozdrawiam,
Marek „cezi” Celarek
jakbyś poćwiczył z kimś przekazywanie wiedzy na czas, to i nauczyciel by z Ciebie był 🙂 Dzięki za how-to.
a co z unikalnymi kliknięciami?