You are on page 1of 2

[PHP] Jak zrobić tekstowy i graficzny licznik odwiedzin z własnym wzorem

cyfr?

Chcesz stworzyć tekstowy lub graficzny licznik odwiedzin, ale projekt cyfr chcesz mieć własny,
niepowtarzalny. Licznik ma działać również bez korzystania z graficznej biblioteki GD. Wielkości liter i
ich kształt mają zależeć tylko od Ciebie.

Licznik może wydawać się skomplikowany, a tymczasem to tylko kilka linijek w PHP plus wcześniej
przygotowana grafika dla cyfr. O grafikę się nie martw, przykładowe cyfry graficzne możesz pobrać z
naszej strony. Oto gotowy kod programu, a poniżej znajdziesz plik z cyframi:

<?
$f = "licznik.txt";
$file = fopen($f,"a");
fputs($file, ".");
fclose($file);

$li = filesize($f);

$ile=strlen($li);
for ($i=0;$i<$ile;$i++) {
echo "<img src=\"".substr($li,$i,1).".gif\">";
}
?>
Przykład działania (czas w sekundach zamiast odsłon):

Najpierw tworzymy licznik wejść. Najłatwiejszym i najmniej zawodnym sposobem jest zliczanie kropek
w pliku, do którego są one dopisywane za każdym razem gdy licznik jest zwiększany o 1.

Aby go uruchomić wystarczy utworzyć pusty plik "licznik.txt" i nadać mu prawa do zapisu dla każdej
osoby (chmod 666). Ścieżka może być oczywiście inna, podawana bezwzględnie, np.
/home/sites/strona/licznik.txt

Zasada działania licznika jest banalna. Za każdym razem gdy strona zostaje odczytana, do pliku
licznik.txt dopisywana jest kropka. Funkcja filesize() pobiera wielkość pliku (czyli w naszym
wypadku liczbę kropek).

W tym momencie możesz wypisać zawartość licznika na stronę za pomocą polecenia echo $li; i już
masz działający licznik tekstowy. Tak skonstruowany licznik jest wyśmienity i nie ma możliwości
przypadkowego wykasowania go, bo kropki są dopisywane, a nie nadpisywane.

Bardzo łatwo można też manipulować wielkością początkową - wystarczy samemu dopisać do pliku
np. 500 kropek, aby licznik zaczął liczyć od 500. Można też zrobić inaczej, wprowadzić jeszcze jedną
zmienną przechowującą wartość początkową, np. $start=500;. Licznik może wtedy pokazywać
wartość filesize($sc)+$start.

Teraz należy wartość licznika zamienić na jego graficzną reprezentację. Pobieramy więc aktualny
numer i w pętli umieszczamy gifa o nazwie zgodnym z numerem cyfry. I gotowe...
Pliki z liczbami 1.gif, 2.gif... aż do 0.gif projektujemy dowolnym programem graficznym. Każda cyfra
może być inna.

Pobierz 10 cyfr użytych w tym przykładzie

Przykład licznika wykonanego w ten sposób jest praktyczny - można go użyć bez potrzeby korzystania
z biblioteki graficznej GD, gdzie cyfry można co prawda łączyć w jeden plik gif, ale w wypadku
skomplikowanych cyfr jest to trudne. Nie każda instalacja PHP pozwala też na stosowanie biblioteki
graficznej.

You might also like