Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] wybór z bazy wg kryteriów
Forum PHP.pl > Forum > Przedszkole
kalis
Witam,

Mam problem z wyborem danych z bazy o określonych parametrach

chcę wybrac z bazy zamowienie wszystkie produkty od danego klienta które posiadają status 2
napisałem taki kod
  1. $itemssql = "SELECT zamowienie.*, produkt.*, szczegoly.*, szczegoly.id AS itemid FROM produkt, szczegoly, zamowienie WHERE klient_id = " . $_SESSION['SESS_USERID'] . " AND status =2 AND szczegoly.produkt_id = produkt.produkt_id ;";
  2. $itemsres = mysql_query($itemssql);
  3. $itemnumrows = mysql_num_rows($itemsres);
  4. while($itemsrow = mysql_fetch_assoc($itemsres)) ...


i zwraca mi wszystkie rekordy z bazy zamowienie dziwnie zestawione
proszę o pomoc co zrobilem zle i co poprawić
nospor
Cytat
i zwraca mi wszystkie rekordy z bazy zamowienie dziwnie zestawione
super dokladny opis problemu....

"Dziwnie zestawione" czyli jak? Jak powinno wygladac a jak wyglada.

edit: juz chyba wiem.
pobierasz dane z 3 tabel jednak powiązanie okreslach tylko po dwoch. trzecia wiec tabela wcina ci sie tylko gdzie moze. normalna sytuacja smile.gif musisz okreslic w warunku wszystkie powiązania
kalis
dzięki za odpowiedz tylko tak patrze patrze i nie widze jak to zrobic
nospor
szczegoly.produkt_id = produkt.produkt_id - w ten sposob wiązesz ze sobą 2 tabele. Musisz dorobic jeszcze jeden warunek, ktory związe jeszcze tę jedną. czego nie rozumiesz?
kalis
i juz działa dzięki za pomoc

Witam,

Chciałem zmodyfikować aby wyświetlał mi jeszcze login osoby
łączenie tabela klient zawiera id_klient, login a zamowienie id_klient

dałem kod

  1. $zapytanie = mysql_query ("SELECT klient.*, zamowienie.*, produkt.*, szczegoly.*, szczegoly.id AS itemid FROM produkt, szczegoly, zamowienie WHERE klient.klient_id=zamowienie.klient_id AND status =$akcja AND szczegoly.produkt_id = produkt.produkt_id AND szczegoly.zamowienie_id=zamowienie.zamowienie_id ORDER BY data_zakupu;");


no i wywala mi

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\sklep\szczegoly.php on line 23

siedzę nad tym od wczoraj i mam zaćmienie
nospor
to ty zamiast miec zacmienie to wyswietl sobie jaki dostajesz blad....
http://nospor.pl/php-faq-n29.html#faq-6
kalis
nospor za Twoja radą

wynik :

Zapytanie: SELECT klient.*, zamowienie.*, produkt.*, szczegoly.*, szczegoly.id AS itemid FROM produkt, szczegoly, zamowienie WHERE klient.klient_id=zamowienie.klient_id AND status =2 AND szczegoly.produkt_id = produkt.produkt_id AND szczegoly.zamowienie_id=zamowienie.zamowienie_id ORDER BY data_zakupu --- błąd: Unknown table 'klient'

tylko że tabela klient istnieje.
nospor
widac jednak nie istnieje smile.gif

wielkosc liter ma tez znaczenie
kalis
nospor no sprawdziłem 3 razy jest tabela klient w innym odwołaniu na innej stronie działa.
mysql nie ma chyba limitu na ilość wybranych tabel.
nospor
skoro mysql mowi, ze nie zna tabeli KLIENT to znaczy ze jej nie ma. koniec i kropka smile.gif


Cytat
klient w innym odwołaniu na innej stronie działa.
no to moze ta inna strona korzysta z innej bazy danych winksmiley.jpg Juz nie raz takie przypadki na forum widzialem winksmiley.jpg
nowotny
Cytat(kalis @ 11.09.2009, 12:11:00 ) *
SELECT klient.*, zamowienie.*, produkt.*, szczegoly.*, szczegoly.id AS itemid FROM produkt, szczegoly, zamowienie WHERE

Wybierasz pola z tabeli "klient" ale nie mówisz mysqlowi żeby tej tabeli użył...
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.