45553 skanuj0408 (2)

45553 skanuj0408 (2)



424 PHP i MySQL dla każdego

Efekt działania zapytania, o ile jego wykonanie zakończyło się sukcesem, jest przypisywany zmiennej allVisits. W przypadku gdyby zapytanie nie zostało poprawnie wykonane, zmienna al 1 Visits przyjmie wartość 0.

Celem drugiego zapytania jest pobranie liczby tych odwiedzających, którzy zalogowali się do serwisu. Jego postać będzie analogiczna do przedstawionej w poprzednim przypadku, z tą różnicą, że będzie musiał zostać dodany dodatkowy warunek w postaci: Stats.Userld <> 1

Wartość 1 w kolumnie Userld oznacza bowiem niezalogowanego użytkownika. A zatem zapytanie to będzie miało jedną z trzech postaci (w zależności od argumentów przekazanych funkcji):

1.

SELECT COUNTC*) AS Ile FROM Stats WHERE Data >- 'SdataOd' AND Data <- 'SdataDo' AND Stats.Userld <> 1 ORDER BY Ile DESC

2.

SELECT COUNTC*) AS Ile FROM Stats WHERE Data > DATE_SUB(N0W(). INTERVAL Sile DAY) AND Stats.Userld o 1 ORDER BY Ile DESC

3.

SELECT COUNTC*) AS Ile FROM Stats WHERE Stats.Userld o 1 ORDER BY Ile DESC

Wynik działania zapytania jest przypisywany zmiennej knownUsersVisits, a gdyby jego wykonanie nie zakończyło się sukcesem, zmienna ta otrzymuje wartość 0. W ten sposób pobrana została całkowita liczba odwiedzin oraz liczba odwiedzin zarejestrowanych użytkowników. Jak łatwo się domyślić, liczba odwiedzin niezarejestrowanych użytkowników wynika z odjęcia od siebie tych wartości, nie ma więc potrzeby wykonywania dodatkowego zapytania. Ostatecznie uzyskane wartości są wyświetlane za pomocą instrukcji echo.

Treść pozostałych funkcji jest do siebie podobna. Zaczynają się od sprawdzenia, czy istnieje połączenie z bazą danych (zmienna connected ma wartość true). Jeśli nie, kończą działanie wywołując instrukcję return. Jeśli jednak połączenie istnieje, jest konstruowane odpowiednie zapytanie, inne dla każdej funkcji. Istnieje jednak część wspólna, którą jest konstrukcja warunków dotyczących okresu, z którego mają być pobierane dane. Warunki te mają taką samą postać jak w wyżej omawianym przykładzie. Dalej przedstawimy zatem jedynie główną treść zapytań, zakładając że mają one dotyczyć pełnego zakresu danych (czyli treść zapytań w sytuacji, kiedy zmienne dataOd i dataDo zawierają puste ciągi znaków, a zmienna ile wartość większą od zera).


Wyszukiwarka

Podobne podstrony:
46774 skanuj0437 454 PHP i MySQL dla każdego Na dole strony, o ile załogowany użytkownik ma przywile
skanuj0284 (3) 298 PHP i MySQL dla każdego Wynik działania takiego zapytania został przedstawiony na
skanuj0335 (2) 350 PHP i MySQL dla każdego już indeks związany w tym kluczem. Z tego samego względu
skanuj0523 544 PHP i MySQL dla każdego Pozwala ono stwierdzić, czy w tabeli Klienci znajduje się już
54459 skanuj0317 (2) 332 PHP i MySQL dla każdego Efektem działania podzapytania nie musi być pojedyn

więcej podobnych podstron