Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mysql]]php] Wyszukiwarka kilku parametrów, Wyszukiwarka kilku parametrów, wtedy kiedy nie wszystkie są spełnione
jaslu
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 11.11.2007

Ostrzeżenie: (0%)
-----


Witam
Robię wyszukiwarkę i jak do tej pory udało mi się zrobić taką która wyszukuje gdy zadamy jej kilka warunków.

SELECT * FROM tabela WHERE warunek1 AND warunek2 AND warunek3 and warunek4 itd,

ale chciałbym zrobić tak, że nawet gdyby któryś z warunków nie został spełniony to zostałyby wyszukane pozycje które spełniają pozostałe warunki.

Bardzo proszę o jakieś wskazówki, może jakieś przykłady.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Foxx
post
Post #2





Grupa: Zarejestrowani
Postów: 896
Pomógł: 76
Dołączył: 15.11.2003
Skąd: Sosnowiec/Kraków

Ostrzeżenie: (0%)
-----


Według mnie ten problem jest trochę stworzony na siłę. Robisz ANDy a jak nie zwraca żadnego rekordu to cofasz do formularza wyszukiwania i podajesz komunikat mówiący, że nie ma ofert spełniających podane kryteria i, że sugerujesz rozszerzyć kryteria. I tyle.
Jak ja czegoś szukam i wybieram kryteria to nie chcę żeby mi wyświetlało rekordy, które twórca strony uznał, że mimo wszystko chcę zobaczyć. Chcę raczej zobaczyć że nie ma takich rzeczy jakich szukam i jak będę chciał to sobie zmienię kryteria. To wprowadza w błąd, bo ktoś może nie analizować dokładnie wyników i stwierdzi że to jest dokładnie to czego chciał.
Oczywiście zrobisz jak uważasz, to tylko moja refleksja.
Jeżeli jednak się upierasz przy swoim rozwiązaniu to po prostu niech Twój skrypt, jeżeli zapytanie zwraca zero rekordów, usuwa jedno z kryteriów, które podał szukający (Ty określ które) i niech powtarza w pętli zapytania usuwając kolejne parametry aż nie zwróci czegokolwiek.
Problemem jest to, że jeżeli szukam
imie = jan
nazwisko = kowalski
a ty po pierwszym wykonaniu SELECT musisz usunąć któryś parametr i usuniesz nazwisko i znowu nie dostaniesz rekordów w których imie = jan podczas gdy mogły istnieć rekordy w których nazwisko = kowalski.
Tak więc Twoją metodą skończysz na wypisaniu wszystkich kombinacji parametrów wyszukiwania.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.10.2025 - 18:59