![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 19.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Stworzyłem bazę danych z trzech tabel: TABELA1,TABELA2,TABELA3 I nie wiem jak w kodzie PHP wpisac zapytanie SELECT żeby mieć dwie listy rozwijane z tym ze druga lista rozwijana ma być zalezna od pierwszej.Czy to jest wykonalne ?
Tabela1 posiada pola:id(int), nazwa Tabela2 posiada pola:id(int), nazwar, Tabela3 posiada pola:id(int), id_tabeli1(int), id_tabeli2(int) Czy ktoś jest w stanie pomóc mi ? |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 896 Pomógł: 76 Dołączył: 15.11.2003 Skąd: Sosnowiec/Kraków Ostrzeżenie: (0%) ![]() ![]() |
Poszukaj na forum i w google "chain select", "połączone selecty" etc. - było wiele razy.
Możesz użyć JavaScript do ustawienia opcji drugiego selecta albo przeładować stronę po zmianie w pierwszym selectcie i wtedy wybrać dane do drugiego selecta. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 19.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
A czy to można za pomoca zapytania do bazy MYSQL SIę odnieść ?
np slelect (coś z tabeli1) from tabela3 tylko bardziej rozbudowane Bo nie umiem tworzyc rozbudowanych zapytań. Czy mółgbyś coś zaproponować ? |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 896 Pomógł: 76 Dołączył: 15.11.2003 Skąd: Sosnowiec/Kraków Ostrzeżenie: (0%) ![]() ![]() |
Proponuję: Temat: linkiKursy_dla_poczatkujacych
Wybrać sobie kurs MySQL i przerobić podstawy. To czego potrzebujesz to instrukcja WHERE w zapytaniu SQL. Tabela z opcjami może mieć pole "rodzic" i gdy rodzic z pierwszego selecta zostanie wybrany to zapytanie w celu wyciągnięcia opcji do drugiego selecta mogło by wyglądać tak:
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 19.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Pierwszy select wygląda u mnie tak :
<select size="1" name="karkas" > <?php mysql_connect('localhost', '', '') or die('Nie można się połączyć'); mysql_select_db('transformatory'); $zapytanie = 'SELECT DISTINCT nazwa(tabela1) FROM korpusy(tabela1),trafo(tabela3) WHERE trafo.id_korpusy=korpusy.id'; $wynik = mysql_query($zapytanie); while ($row = mysql_fetch_row($wynik)){ echo "<option value='".$row[0]."'>".$row[0]."</option>"; } mysql_free_result($wynik); ?> </select> W drugim natomiast select wygląda tak : <select size="1" name="rdzen" > <?php $zapytanie2 = 'SELECT nazwar(tabela2) FROM rdzenie(tabela2),trafo(tabela3) WHERE .................? '; $wynik2 = mysql_query($zapytanie2); while ($row1 = mysql_fetch_row($wynik2)){ echo "<option value='".$row1[0]."'>".$row1[0]."</option>"; } mysql_free_result($wynik2); ?> </select> Jak to się ma teraz do :SELECT * FROM opcje WHERE rodzic='".$wybrany_z_1_selecta_rodzic. Stworzyłem do drugiego selecta takie zapytanie : <select size="1" name="rdzen" > <?php $zapytanie2 = 'SELECT nazwar FROM rdzen,trafo WHERE trafo.id_korpusy='".$row[0]."' '; $wynik2 = mysql_query($zapytanie2); while ($row1 = mysql_fetch_row($wynik2)){ echo "<option value='".$row1[0]."'>".$row1[0]."</option>"; } mysql_free_result($wynik2); ?> </select> Ibłąd mi wyrzuca w lini $zapytanie2 = 'SELECT nazwar FROM rdzen,trafo WHERE trafo.id_korpusy='".$row[0]."' '; Ten post edytował marcin12485 19.02.2009, 15:35:19 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 02:00 |