1

私の問題は、前のドロップダウンからの選択に基づいてドロップダウンをロードしようとすることです。データベースから値をロードしています。しかし、使用する$_get['emirate']と値が得られません。値が設定されていないと表示されます。

$data = mysql_query("SELECT * FROM emirate") 
        or die(mysql_error()); 

    Print "<table border cellpadding=3>"; 
    print"<tr><th><form method=get action='index.php'><select id=EMIRATE size=1><OPTION value=all>all</option>";
    while($info = mysql_fetch_array( $data )) 
    { 
        Print "<option value=". $info['em_name'] .">".$info['em_name']."</option>"; 
    }
    print"</select></form></th>";
    if(isset($_GET['EMIRATE'])){
        $name=$_GET['EMIRATE'];
        echo $name;

        $data = mysql_query("SELECT a_name FROM areas where em_id=(select em_id from emirate where em_name=\"".$name."\")") 
        or die(mysql_error());
        Print "<th><select name=AREAS size=1>";
        while($info = mysql_fetch_array( $data ))
        {
            Print "<option >".$info['a_name']."</option>";
        }
        print"</select></th>";
    }
4

3 に答える 3

3

私は問題を見つけました。

送信ボタンを配置していないため、フォームが送信されませんでした。したがって、$_GETから値を取得していませんでした。

http://php.net/manual/en/reserved.variables.get.php

今、私はスムーズに結果を得ることができます。

于 2012-11-22T06:05:36.700 に答える
1

前のページのフォームで、post または get のどのメソッドを使用していますか?

$_GET を、post と get の両方から値を取得する $_REQUEST に置き換えることができます。

于 2012-10-17T07:59:39.347 に答える
1
<select id=EMIRATE size=1><OPTION value=all>all</option>

HTML を修正してください.... select のname属性を設定し忘れています...

<select id="EMIRATE" size="1" name="EMIRATE">
    <option value="all">all</option>
    ....
于 2012-10-17T08:09:47.567 に答える