Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] wybór z bazy wg kryteriów
kalis
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 9.08.2008

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


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ć
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




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


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
kalis
post
Post #3





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 9.08.2008

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


dzięki za odpowiedz tylko tak patrze patrze i nie widze jak to zrobic
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




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?


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
kalis
post
Post #5





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 9.08.2008

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


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
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




to ty zamiast miec zacmienie to wyswietl sobie jaki dostajesz blad....
http://nospor.pl/php-faq-n29.html#faq-6


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
kalis
post
Post #7





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 9.08.2008

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


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.
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




widac jednak nie istnieje smile.gif

wielkosc liter ma tez znaczenie


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
kalis
post
Post #9





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 9.08.2008

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


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.
Go to the top of the page
+Quote Post
nospor
post
Post #10





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




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


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
nowotny
post
Post #11





Grupa: Zarejestrowani
Postów: 875
Pomógł: 122
Dołączył: 2.02.2008

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


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ł...

Ten post edytował nowotny 14.09.2009, 14:09:39
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 12:17