Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Tworzenie formularza na podstawie danych z 2óch tabel
Forum PHP.pl > Forum > Przedszkole
dr revuu
Mam następujący problem. Chcę utworzyć formularz, który czerpie dane z 2óch tabel. Wygląda to tak:

  1. echo '<select>';
  2. $zapyt=mysql_query("SELECT `id` FROM `$tabela1` WHERE `id`='$zmienna1' ");
  3.  
  4. while($po_zapyt=mysql_fetch_assoc($zapyt)){
  5. $zapyt2=("SELECT `name` FROM `$tabela2` WHERE `id`='$po_zapyt[id]'");
  6. $po_zapyt2=mysql_fetch_assoc($zapyt2);
  7. echo "<option value=\"$po_zapyt[id]\">$po_zapyt2[name]</option>";
  8. }
  9. echo '</select>';


Próbowałem wstawić drugą pętlę while w miejscu:
  1. $po_zapyt2=mysql_fetch_assoc($zapyt2);
ale to nic nie dało. Jakieś sugestie?
krispak
Ja tu widze tylko jedna petle, gdzie masz ta druga? A tak w ogole to co masz za problem bo nic nie napisales na jego temat. Wyskakuje blad? Nie wypisuje?

EDIT:
Masz relacje miedzy tabelami wiec uzyj w jednym zapytaniu LEFT JOIN
zordon
poczytaj o left join, inner join (w zależności co chcesz uzyskać) - wyciągniesz potrzebne dane w 1 zapytaniu
dr revuu
@krispak - nie pokazuje mi się lista w select, mimo że w bazie są rekordy.
@zordon - tylko to jest tak, że drugie zapytanie pobiera wartości z pierwszego. Dobra, spojrzę jak jest z tym left i inner join. Proszę nie zamykać tematu, jbc to jeszcze napiszę tutaj.
_d7
Cytat(dr revuu @ 18.09.2010, 12:22:21 ) *
Mam następujący problem. Chcę utworzyć formularz, który czerpie dane z 2óch tabel
[...]
Jakieś sugestie?

Wydaje mi się, że chcesz zrobić coś takiego
  1. echo '<select>';
  2. $zapyt=mysql_query("SELECT t1.id as id, t2.name as name FROM `$tabela1` t1 INNER JOIN `$tabela2` t2 ON (t1.id = t2.id)");
  3.  
  4. while($po_zapyt=mysql_fetch_assoc($zapyt)){
  5. echo "<option value=\"$po_zapyt[id]\">$po_zapyt2[name]</option>";
  6. }
  7. echo '</select>';

ale tylko zgaduję ...
mogą był błędy składniowe, bo nie sprawdzałem
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.