Rozdział 15. ♦ Generowanie statystyk
♦ 4 — dla przeglądarek Mozilla;
♦ 5 — dla przeglądarki Internet Explorer (MSIE);
♦ 6 — dla przeglądarki Opera.
Tabelę Przeglądarki wypełnimy więc danymi za pomocą instrukcji:
INSERT INTO Przeglądarki VALUES (0. 'Nieznana').
(1. ’F1reFox').
(2, 'Konqueror').
(3. 'Netscape').
(4. 'Mozilla').
(5. 'Msie').
(6. 'Opera')
Ponieważ wykorzystamy system logowania przygotowany w poprzednim rozdziale, identyfikatory użytkowników wpisywane do kolumny User Id pobierzemy z tabeli Users. Musimy jednak ustalić, w jaki sposób zidentyfikujemy osoby odwiedzające, które nie będą posiadały konta w naszym serwisie i które nie będą się logowały. Do wyboru jest kilka możliwości, my jednak wprowadzimy do tabeli Users dodatkowy wiersz o identyfikatorze 1 i nazwie Gość. Będzie on oznaczał użytkownika, który się nie zalogował. Musimy zatem sprawdzić, czy w tabeli Users istnieje użytkownik o identyfikatorze 1. Jeśli tak, zmieniamy mu identyfikator na pierwszy wolny za pomocą instrukcji UPDATE, np. (w przypadku gdy pierwszym wolnym identyfikatorem jest 10):
UPDATE Users SET Id=10 WHERE Id-1:
Następnie dodajemy do tabeli użytkownika specjalnego o nazwie Gość:
INSERT INTO Users VALUES(1. 'Gość', '-'. '-'):
Skoro mamy już przygotowane niezbędne tabele, musimy napisać skrypty pozwalające na realizację przedstawionych wyżej zadań. Zaczniemy od skryptu zawierającego funkcje pomocnicze: nawiązujące połączenie z bazą, wstawiające i pobierające dane, rozpoznające typ systemu i przeglądarki wykorzystywanych przez użytkownika. Wszystkie te funkcje zapiszemy w osobnym pliku o nazwie mysąl Junctions.php. Oprócz funkcji znajdą się w nim definicje pomocniczych stałych, określających niektóre kody powrotów, które pozwolą na zwiększenie czytelności kodu. Na początku pliku zdefiniować należy zatem następujące stałe:
♦ BROWSER_UNKNOWN — o wartości 0; oznaczającą, że nie udało się rozpoznać wykorzystywanej przez użytkownika przeglądarki;
♦ BROWSER_FIREFOX — o wartości 1; oznaczającą, że użytkownik wykorzystuje przeglądarkę FireFox;
♦ BR0WSER_K0NQUER0R — o wartości 2; oznaczającą, że użytkownik wykorzystuje przeglądarkę Konąueror;