Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Proszę o sprawdzenie gdzie jest błąd w poleceniu SELECT
Forum PHP.pl > Forum > Bazy danych > MySQL
unloco
Witam. Mam polecenie w mysql o treści:

  1. $result = "SELECT * from tabela WHERE kraj = '$get_kraj' AND miasto = '$wybrane_miasto' or miasto = 'CAŁY KRAJ' AND rodzaj = '$listing' AND status = 'tak'";


kolumna STATUS może zawierać dwie wartości: 'tak' LUB 'nie' i na pewno NIE JEST PUSTA.

Dlaczego wyświetlają mi się wszystkie rzędy tabeli gdzie status równe jest ZARÓWNO 'tak' jak i 'nie' a nie TYLKO 'tak'? Czy to trzeba jakoś w kolejności zamienić?

A i ważne jest aby wyświetlały się wszystkie rzędy których zawartość kolumny 'miasto' wynosi ALBO treść zmiennej $wybrane_miasto ALBO "CAŁY KRAJ";
phpion
Logika się kłania. Umieść nawiasy w odpowiednim miejscu i powinno zagrać. Gdzie? Sam do tego dojdź smile.gif Podpowiedź: w okolicach OR.
unloco
Udało mi się znaleźć odpowiedź tuż przed Twoją poradą. Znalazłem odpowiedź na http://www.tizag.com/sqlTutorial/sqlandor.php

i prawidłowo jest:

  1. $result = "SELECT * from tabela WHERE kraj = '$get_kraj' AND (miasto = '$wybrane_miasto' or miasto = 'CAŁY KRAJ') AND rodzaj = '$listing' AND status = 'tak'";


ale dzięki za fatygę ;* tongue.gif

Można temat zamknąć
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.