2012-05-13 10 views
-1

私は別のテーブルからの2番目のドロップダウンリストのクエリの条件のドロップダウンリストに値を設定するmysqlテーブルの列を持っている状況があります。どのように私はPHPを使用して、2番目のドロップダウンリストの選択を別の入力フォームに渡すと思いますか?私は両方のテーブルに同じformBarkod列を持っています。これはテーブルデータ間の接続です。mysql dbからドロップダウンリストを入力する方法と、選択に基づいてPHPフォームの別のドロップダウンリストを入力する方法はありますか?

+1

これまでに何をしていますか? – Broncha

+1

[よくある質問](http://stackoverflow.com/faq#dontask)から:_実際に直面している問題に基づいて、実用的で信頼できる質問をするだけです。わかりやすいオープンエンドの質問は、私たちのサイトの有用性を低下させ、他の質問をフロントページから外します._ **あなたは:** [http://www.learningjquery.com/](http://www.learningjquery .com /)および[http://jquery.com/](http://jquery.com/)]を参照してください。 – Zuul

答えて

1

これはjavascriptの仕事のようです。それぞれのドロップダウンにphpとmysqlを設定することができますが、最初のドロップダウンで選択すると、次のドロップダウンのどれに表示されるかが影響します。 PHPとMySQLは次のようになります。

<? 
//Assuming $dbh is a proper mysqli object... 
$options = $dbh->query("SELECT * FROM options"); 

echo '<select id="firstDropdown">'; 
while($o = $options->fetch_object()) { 
    echo '<option value="'.$o->id.'">'.$o->name.'</option>'; 
} 
?> 

各ドロップダウンでこのプロセスを繰り返します。

次に、変更に取り組むためにJavaScriptを書く必要があります。私はこれを行うのに十分な "純粋な" javascriptを知らないが、jQueryでどのように見えるかを示すことができる。基本的な流れは、あなたがすべてを非表示にすることである

<select id="firstDropdown"> 
    <option value="1">Option 1</option> 
    <option value="2">Option 2</option> 
    <option value="3">Option 3</option> 
</select> 
<select id="dropdown1" class="dropdown"> 
    ... 
</select> 
<select id="dropdown2" class="dropdown"> 
    ... 
</select> 
<select id="dropdown3" class="dropdown"> 
    ... 
</select> 

次にjQueryのは次のようになります(すべてのdocument.readyに包まれた()もちろん)

$(".dropdown").hide(); 

$("#firstDropdown").on("change",function(){ 
    $(".dropdown").hide(); 
    var value = $("#firstDropdown").val(); 
    $("#dropdown"+value).show(); 
}); 

を:あなたのHTMLは次のようになりますと仮定すると、セカンダリのドロップダウン。次に、最初のドロップダウンの値が変わるたびに、セカンダリのドロップダウンを再表示し、希望するドロップダウンのみを表示します。実際にDOM要素を実際に作成したり、新しいドロップダウンを得るためにajax呼び出しを使用したりすることで、もっと多くのことを行うことができますが、これは基本的な概念をカバーしています。

編集:ここには、実例があります。jsfiddle.net

+0

アイデアは素晴らしいです!私はあなたのjQueryコードを理解していれば、別のドロップダウンが最初の選択の後に表示されますが、私のjavascriptはそれを行うにはあまりにも貧しいです – mdakic

+1

それは間違いなくいくつかのJavaScriptを学ぶためにウェブ開発者として価値がある。 jQueryは間違いなくJavaScriptを学ぶ最も簡単な方法であり、非常に広く使用されていますので、多くのサポートを受けることができます。 –

関連する問題