从php中的select / option标签中提取值?

时间:2011-11-08 17:16:05

标签: php javascript html forms

我不知道该怎么做以及如何说出问题,所以我会尽我所能(PS:我是网络开发人员的新手,所以如果可以的话,请在答案中说清楚。)

所以,我有一个带有列表名称的下拉菜单,这些名称取自我的数据库。在该数据库中,我有一个带有名称列的表(呈现在下拉框中的表)以及这些名称的相关信息。现在,当用户选择其中一个名称时,我希望相关信息显示在标签下方。我也不能使用form.submit()方法,因为我的提交按钮已被用于其他内容。

以下是该位的代码:

<form name="name_choice" method="post" action="index.php">
     <select name="names" onchange="form.some_method()">
      <option value="NULL" selected="selected">--Select name--</option>
       <?php
            for ( $i = 0; $i < $numrows; $i++ ) { //for all the columns, iterate and print out                  
                        $id_names = mysql_result($result, $i);
            echo "<option value='".$id_names."'>".$id_names."</option>";
        }
        ?>
 </select>
 </form>

所以上面的位工作正常,但是“some_method()”是我的问题,我不知道触发什么来显示下拉框下面的div中的文本(代码在下面):< / p>

<div class="information"> <!--if the name is chosen ONLY!-->
    <?php
    if($_POST['names'] == "NULL") {
         echo '<p>Please select an option from the select box.</p>'; //this bit is for testing
    }
    else {
         echo '<p>You have selected: <strong>', $_POST['names'], '</strong>.</p>';
                 //and then how to echo the relevant information?:(
    }                   
    ?>
</div><!--end of possible info-->

1 个答案:

答案 0 :(得分:0)

onchange是一个JavaScript事件。 PHP无法对表单数据进行实时处理,因为它位于服务器上,而表单位于客户端上。您可以通过使用AJAX并将表单数据作为用户类型传递来进行,但这将比需要的工作多得多。看看JavaScript form validation帖子,让自己走上正确的道路。