![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 0 Dołączył: 4.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam mam dwie tabele ps_product i ps_product_lang
Chciałbym (w jednej pętli?) pobrać dane z obydwóch tabel. Na razie mam coś takiego - działa.
Teraz chciałbym dodać zapytanie drugie:
i w tym samym echo, w miejscu <link></link> dodać pobrane dane:
Czy mógłby mi ktoś pokazać jak połączyć te dwa zapytania? Próbowałem przez dwie pętle while (pętla w pętli) ale w ten sposób mam niekończącą się pętlę. Proszę o pomoc. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 264 Pomógł: 54 Dołączył: 31.08.2007 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
poczytaj o JOIN w zapytaniach SQL
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 1 Dołączył: 8.05.2013 Ostrzeżenie: (0%) ![]() ![]() |
Jak nie chcesz się uczyć JOINów, poniżej jest dosyć siłowe rozwiązanie korzystające tylko z php. Zapisałem wyniki Twojego drugiego zapytania w tablicy przed wykonaniem pierwszego zapytania. Rzeczy, które dodałem, są pogrubione. Powinno działać (sory, że nie zamknąłem kodu w tagach [php], ale wtedy nie działało pogrubienie :<)
$sql2="SELECT * FROM ps_product_lang"; $wynik2=mysql_query($sql2); $i=1; $productlang=array(); while($linie=mysql_fetch_array($wynik2)) { $productlang[$i]=$linie[product_link]; $i++; } $i=1; $sql="SELECT * FROM ps_product WHERE quantity>=1"; $wynik=mysql_query($sql); while($rowek=mysql_fetch_array($wynik)) { echo '<produkt><id_produkt>'. $rowek[id_product] .'</id_produkt><stan_magazynowy>'. $rowek[quantity] .'</stan_magazynowy><produkt_kategoria>'. $rowek[id_category_default] .'</produkt_kategoria><cena>'. round($rowek[price], 2) .'</cena><numer_ref_producenta>'. $rowek[supplier_reference] .'</numer_ref_producenta><link>'. $productlang[$i] .'</link></produkt>'; $i++; } Ten post edytował Miszczklawiatury 3.06.2013, 16:40:55 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 0 Dołączył: 4.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki działa. Spróbuję jeszcze osiągnąć to samo za pomocą JOIN.
Dzięki za pomoc. Ok poczytałem o tym JOIN i spróbowałem stworzyć zapytanie ale coś mi nie wychodzi: Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in public_html/xml/feed.php on line 29 Linia 29: Cały skrypt:
Budowa tabeli ps_product:
Budowa tabeli ps_product_lang:
Rozumiem że coś nie tak jest z zapytaniem, jak powinno poprawnie wyglądać? Okazało się że była literówka w słowie quantity. Jednak dalej nie działa, bo skrypt się wykonuje ciągle i zero wyników. a.id_product zamienić na id_product i działa. Temat do zamknięcia. Ten post edytował Kaluza 4.06.2013, 10:10:12 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 14:06 |