![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
Mam problem z napisaniem zaawansowanej wyszukiwarki. Formularz wygląda tak:
Mianowicie wszystko komplikuje się dla mnie, ponieważ użytkownik może wybrać pole "Wszystkie". I co wtedy zrobić? Sprawa byłaby prostsza bez tego czyli jedno zapytanie gdzie coś=coś i szukaj. Ale może wybrać np. miasto warszawa a dalej już "Wszystkie", "Wszystkie", "Wszystkie" etc. Jak to wyszukać? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 168 Pomógł: 126 Dołączył: 5.02.2010 Skąd: Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Jeszcze źle.
Nie będę podpowiadał za dużo, ale spróbuj najpierw zrobić na jednym polu, gdzie masz SELECT * FROM tableName WHERE columnName = selectValue to jest prostsza wersja. Teraz spróbuj do tego dodać żeby rozróżniał 2 warunki: Tutaj może być albo WHERE albo AND Wiesz na pewno, że przy wyborze pierwszego selecta, który jest różny od "wszystkie" dodajesz do warunki WHERE, w każdym kolejnym dodajesz już AND i AND itd... Przy dodawaniu AND musisz oczywiście sprawdzać czy poprzednie selecty są różne od "wszystkie", bo jeżeli masz wybrane "wszystkie", to wtedy do zapytania nie dodajesz nic i pobierasz wszystkie rekordy czyli: SELECT * FROM tableName Pisz, jeżeli jeszcze są jakieś niejasności, ja z ciekawości tego zadania sam zrobiłem taką wyszukiwarkę na podstawie danych: name, country, city, capital, employees Dodatkowo chcę do tego dodać możliwość dodawania kolejny pól, edycji istniejących oraz dodawanie nowych rekordów do bazy itd.... |
|
|
![]() ![]() |
![]() |
Aktualny czas: 17.10.2025 - 20:13 |