Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL]Problem z zapytaniem
Forum PHP.pl > Forum > Przedszkole
Ulysess
witam mam takie zapytanie :

  1. "SELECT c.`id`,c.`recipient_status`,c.`sender`,c.`date`,c.`message`,t2.`id_char`,t2.`nic
    k`,t2.`avatar` FROM `message` c LEFT JOIN `char` t2 ON c.`sender` = t2.`id_char` WHERE `recipient`='"
    .mysql_real_escape_string($id_user)."' OR `recipient`='".mysql_real_escape_string(0)."' AND `type`='".mysql_real_escape_string(1)."' AND `recipient_status`='".mysql_real_escape_string(0)."' ORDER BY c.date DESC LIMIT 100";


zadaniem zapytania jest pobranie rekordów które są dla danego użytkownika lub 0 oraz type 1(systemowa) i status czyli czy jest widoczna czy nie. problem jest na początku zapytania.. jeśl nie ma OR recipient 0 pobiera tylko dla usera a chciałbym aby jeszcze pobierał + 0 (czyli wiadomośc skierowana do wszystkich) z góry dziękuje za pomoc
nospor
or to +
and to *

2 +3 *2 = ?
Jaki wg. Ciebie będzie wynik?
a teraz:
(2+3) * 2 = ?
?

Uzyskaną w ten sposób wskazówkę zastosuj do swojego zapytania.

ps:
mysql_real_escape_string(0)
mysql_real_escape_string(1)
po grzyba escapujesz liczbę którą sam wstawiasz? Myslisz ze nagle tam się pojawi jakiś tekst sqlinjection?
Ulysess
wielkie dzięki smile.gif szczerze mówiąc to podwójne lenistwo .. 1 że nie chciało mi się sprawdzać czy w zapytaniach używa się nawiasów a 2 że po kopiowaniu zapytań nie chce mi się usunąć tej funkcji przy stałych wartościach...
nospor
Cytat
1 że nie chciało mi się sprawdzać czy w zapytaniach używa się nawiasów
nawiasów używa się zawsze, gdy jeden operator jest mocniejszy od drugiego a my chcemy jednak mieć inne priorytety wykonania działań. Nie zależnie czy to jest mysql, php czy zwykła matematyka.

Cytat
że po kopiowaniu zapytań nie chce mi się usunąć tej funkcji przy stałych wartościach...
Lepiej zmień przyzwyczajenia bo daleko taką postawą nie zajedziesz.
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.