• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Wyświetlanie rekordów z bazy z kilkoma warunkami

Object Storage Arubacloud
0 głosów
352 wizyt
pytanie zadane 16 lutego 2018 w SQL, bazy danych przez Bakr Mądrala (6,850 p.)

Witam,

 

Jak wyświetlić zawartość bazy, dla której jest podany zestaw warunków?

Kod:

  if($result=$mysqli->query('SELECT * FROM products WHERE id IN("'.$test.'")')) {
  if($result->num_rows>0) {
    while($row_products=$result->fetch_object()) { 
      
      echo $row_products -> name;
      
    ?>
      
      <?php
    }
  }
      }

Zmienna test jest równa 2, 6, 8. Wynik powyższego kodu zwraca tylko rekord o id=2.

komentarz 16 lutego 2018 przez mi-20 Stary wyjadacz (13,190 p.)

Nie wiem czy zrozumiałem, masz coś takiego?

$test = 2,6,8

?

komentarz 16 lutego 2018 przez Bakr Mądrala (6,850 p.)
Tak, w takiej postaci dane są zapisane w bazie, a zmienna przechowuje te wartości.
komentarz 16 lutego 2018 przez mi-20 Stary wyjadacz (13,190 p.)

Na początku dodam że nie jestem pewien na 100% swojej odpowiedzi ale według mnie to nie ma prawa zadziałać. Zmienna 'test' przechowuje tą wartość ale jest ona traktowana jako całość dlatego wyświetla dane tylko dla warunku 2, jak zamienisz kolejność np, 6,2,8 to wyświetli dane dla 6. Musisz to podzielić, np na 

$test_1 = 2
$test_2 = 6
$test_3 = 8

i w warunku użyć AND aby ograniczyć te dane dla 2,6,8

komentarz 16 lutego 2018 przez tirith Mądrala (5,940 p.)
raczej OR
komentarz 16 lutego 2018 przez mi-20 Stary wyjadacz (13,190 p.)
ale w przypadku OR wystarczy że spełni się tylko jeden warunek a autorowi chodzi chyba o to żeby wszystkie były spełnione
komentarz 16 lutego 2018 przez tirith Mądrala (5,940 p.)
Zrozumiałem to tak że mają być wyświetlone rekordy o podanych ID. Jak zrobisz AND to za każdym razem będzie szukał rekordu w którym ID będzie 2 AND 6 AND 8 i nigdy się nie warunek nie spełni
komentarz 16 lutego 2018 przez mi-20 Stary wyjadacz (13,190 p.)
Hmm, no racja. Ale też jak dasz OR to dopóki id 2 nie zostanie usunięte z bazy tylko dla niego będą wyświetlane dane a 6,8 będą bez użyteczne

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
1 odpowiedź 133 wizyt
pytanie zadane 20 marca 2020 w SQL, bazy danych przez Dainc Nowicjusz (160 p.)
0 głosów
1 odpowiedź 239 wizyt
0 głosów
1 odpowiedź 410 wizyt
pytanie zadane 13 listopada 2018 w SQL, bazy danych przez Micheall Początkujący (420 p.)

92,539 zapytań

141,382 odpowiedzi

319,476 komentarzy

61,928 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...