Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL]Pobieranie rekordów według określonych kryteriów
ossUter
post
Post #1





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 27.11.2013

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


Witam,

parę ładnych godzin borykam się z problemem, bardziej chodzi o kwestię SQL.

Obrazując, skrypt po wpisaniu w textboxa wyszukuje w SQL dane rekordy, gdzie nazwa = wpisanna_wartosc. Zakładając, że wpisałem 2 nazwy oddzielając je przecinkiem (X, Y)

Mianowicie 2 warunki:

a) jeśli się wybierze opcję "wszystkie zawierające wpisane wartości" ma szukać wszystkich rekordów, w których występuje dana wyżej "nazwa". To działa:
  1. $where .= "AND nazwa IN('" . implode("','", $wprowadzona_wartosc) . "')";


Wzór:

Zawiera X;
Zawiera Y;
Zawiera Y i X;

To działa jak należy.

b ) jeśli się wybierze opcję "wszystkie zawierające TYLKO wprowadzone wartości ma szukać rekordów, w których występuje tylko w "nazwa" to, co wprowadziliśmy.

Tutaj nie wiem, jak to zrobić.

Wzór:

Zawiera X i Y - tylko, nie chcę rekordów, które zawierają tylko X, tylko Y oraz ewentualnie jeśli w MySQL w "nazwa" jest 3 opcje (X, Y, Z).

Nie wiem jak to jaśniej wytłumaczyć, reausumując:



--------------------

Przykład:

Mam 5 wartości w tabeli, gdzie nazwa to w różnych kombinacjach:

1)Nazwa1, Nazwa2,
2)Nazwa1, Nazwa8,
3)Nazwa1, Nazwa9,
4)Nazwa8, Nazwa3,
5)Nazwa4, Nazwa5,


Używając wybranej opcji pierwszej, gdzie w polu textboxa wpisane będzie: "Nazwa1, Nazwa8" Wynikiem będzie:
1), 2),3),4), to jest prawidłowe.

Używając opcji drugiej efektem powinno być TYLKO 2).

Ten post edytował ossUter 27.01.2018, 19:57:28
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: 24.08.2025 - 21:37