Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][HTML][PHP]<select name=...> zalezny od drugiego
BIGMaJKeL
post 25.03.2011, 20:55:02
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 25.03.2011

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


Witam po raz pierwszy na tym swietmym forum

Potrzebuje pomocy

chcialbym wykonac dwa zapytania z wynikami w rozwijanym menu i zaleznoscia miedzy nimi tzn menu1 daje kryterium dla menu2

chodzi o producenta i model

odczytanie danych i zrobienie zapytania to nie problem
ale jak zrobic by niemal jednoczesnie po wyborze z listy1 i wejsciu na liste2 w tej drugiej pojawialy sie tylko te dane spelniajace wspolna zalesnosc

tabela1 producent
id nazwa

tabela2 model
id prod_nazwa model

<form method="post" action="mdm.php">
<td class="select">Producent:<select name="producent">
<optgroup label="producent">
<option>
<?php

while($nt=mysql_fetch_array($result))
{
echo "<option value=$nt[nazwa]>$nt[nazwa]</option>";

}

?>
</optgroup>
</select>

probowalem ze zdarzeniem onchange ale nie wyszlo mi, chcialem tez wywolac ten formumarz z wykorzystaniem $_GET ale cos sie pogubilem i utknolem

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
gargamel
post 25.03.2011, 22:49:35
Post #2





Grupa: Zarejestrowani
Postów: 278
Pomógł: 35
Dołączył: 25.06.2010

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


AJAX - robisz zewnętrzny plik który generuje listę "optionów" dla drugiego selecta, w zależności co prześle do niego pierwszy select.
To co owy plik zwróci wczytujesz to tegoż właśnie drugiego selecta.
Go to the top of the page
+Quote Post
BIGMaJKeL
post 26.03.2011, 00:22:36
Post #3





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 25.03.2011

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


wlasnie nie chce uzywac ajaxa moze dlatego ze nie dokonca znam smile.gif (wcale) i duzo osob stara sie go rowniez pomijac

ale narazie poradzilem sobie tak

<form method="post" name="formularz">
<?php

$zmienna2=$_POST['producent'];

echo "<select name=producent id=producent value='' onchange=\"document.formularz.submit();\">";
while($nt=mysql_fetch_array($wykonaj))
{
if ($nt[nazwa]==$zmienna2) {echo "<option value='$nt[nazwa]' selected>".$nt[nazwa]."</option>";}
else
echo "<option value='$nt[nazwa]'>$nt[nazwa]</option>";
}
echo "</select>";

?>
</form>
</td>
<td>

<?php


$zapytanie2="select * from mdm_modele where producent= '$zmienna2'";
$wykonaj2=mysql_query($zapytanie2);

echo "<select name=model value='' id=model";
while($nt=mysql_fetch_array($wykonaj2))
{
echo "<option value=$nt[model]>$nt[model]</option>";
}
echo "</select>";

?>

problem tylko jest taki ze z zapytania2 wczytuje mi wszystko po za pierwszym rekordem nie wiem dlaczego
Go to the top of the page
+Quote Post
Rid
post 26.03.2011, 01:18:38
Post #4





Grupa: Zarejestrowani
Postów: 715
Pomógł: 47
Dołączył: 5.12.2010

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


Proszę,spróbować:
<option value='$nt[nazwa]'>=$nt[nazwa]</option>

błąd może leżeć ,gdzieś między równościami.Daje Pan wieksze niż,a może pomijać równa sie.

Ten post edytował Rid 26.03.2011, 01:19:12
Go to the top of the page
+Quote Post
BIGMaJKeL
post 26.03.2011, 01:19:01
Post #5





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 25.03.2011

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


blad zauwazylem

bylo

echo "<select name=model value='model' id=model>";

a byc powinno


echo "<select name=model value='model' id=model>Producent</option>";

Go to the top of the page
+Quote Post
piotrooo89
post 26.03.2011, 06:57:12
Post #6


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




proszę o umieszczanie kodów w odpowiednich tagach, w przeciwnym wypadku zamknę temat.


--------------------
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 Wersja Lo-Fi Aktualny czas: 14.08.2025 - 08:08