Grupowanie wyników
Dosyć często spotykam się z pytaniem, jak napisać grupowanie wyników, czyli np. mamy produkty które należą do kategorii i jak wyświetlić wszystkie kategorie wraz z należącymi do nich produktami. Początkujący programiści albo nie wiedzą jak to zrobić, albo robią to przy użyciu wielu zagnieżdżonych zapytań, co niezbyt dobrze wpływa na wydajność aplikacji.
Wyszukiwarka - zapytanie zależne od warunków
Często piszemy wyszukiwarki. Jaka ich rola? Banalnie prosta - na podstawie zadanych kryteriów znaleźć żądane informacje. W tym celu tworzymy zapytanie, które zawiera nasze kryteria wyszukiwania. Zadanie wydaje się proste, jednak wielu początkujących programistów ma z tym problem. Bo o ile potrafią napisać zapytanie, które składa się ze stałej liczby warunków, o tyle z zapytaniem ze zmienną liczbą warunków, uzależnioną od wpisanych wartości w formularzu, mają już problem. W artykule tym postaram się Wam pomóc w oswojeniu tego zagadnienia.
PHP - FAQ
Przedstawię tu faq odnośnie php. Niby dużo tego jest w sieci, jednak przeglądając fora i zadawane pytania, śmiem twierdzić, że za mało... albo ta nasza "młodzież" zaleniwa jest by do nich zaglądać... tak czy siak "dobrego" faq nigdy za duzo
- 1) Złote myśli kubusia a php
- 2) Przygotowanie środowiska
- 3) Na localu działa ,na serwerze nie... - register_globals
- 4) Parsowanie zmiennych
- 5) Cannot add header information - headers already sent...
- 6) Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource - błąd zapytania
- 7) Wyszukiwarka - zapytanie zależne od zadanych kryteriów
- 8) Grupowanie wyników
Pager 2.5.1 oraz EPager
Po dość długim okresie milczenia wrzucam nową wersję Pagera. Wnosi ona parę drobnych poprawek.
Dołączam dodatkowo klasę EPager, która dziedziczy po Pager i rozszerza go o parę ciekawych rzeczy:
- Automatycznie wyliczanie liczby rekordów
- Automatyczne rozpoznawanie sortowania
- Automatyczna generacja wynikowego zapytania na podstawie dwóch powyższych wyliczeń
Co nam to daje? Ano to, że nie musimy się już martwić o budowanie zapytania które będzie stronicowało, które będzie sortowało. Wszystko to zostania samo utworzone na podstawie podstawowego zapytania i podaniu nazw kolumn po których będzie można sortować.
Czyli zamiast tworzyć takie zapytanie na podstawie różnych czynników:
to tworzymy tylko takie:
i o nic już się nie martwimy
Klasa dostępna w paczce 2.5.1 w katalogu epager.
ps: Przykład korzystać będzie z bazy danych. Niezbędne zapytania dostępne są w pliku epager.sql w katalogu epager.
ShoutBox - błąd cache'owania
Dzięki testom użytkownika fomicza wyszło na jaw, że ShoutBox od wersji 1.0 wzwyż ma błąd. Wynikiem tego błędu jest ciągłe odwoływanie się do bazy danych po nowe wiadomości, nawet gdy tych nie ma. Założeniem ShoutBoxa było, by odwoływać się do bazy tylko wtedy, gdy pojawią się nowe wiadomości, a tu taki bug...
Wszystkie wersje od 1.0 wzwyż są już na serwerze w wersji poprawionej. Błąd można poprawić również samemu. W tym celu należy edytować plik ShoutBox.class.php i znaleźć tam funkcję Read a w niej następujący kod:
2
3
if (is_null($_lastId) || $_lastId >= $this->_idMsg){
?>
i zamienić ją na:
2
3
if (is_null($_lastId) || $_lastId > $this->_idMsg){
?>
Jak zapewne zauważyliście, znalazł się o jeden znak za dużo (=).


