需要在单击提交按钮时从下拉列表中检索信息

时间:2012-03-07 15:57:50

标签: php

当我从下拉列表中选择一个值然后点击提交时,如何从数据库的下拉列表中检索我所选择的信息。 意味着我已经在表格中创建了另一个colummn,因此在下拉列表中选择了哪些信息应该弹出与表格相关的信息

3 个答案:

答案 0 :(得分:2)

无法相信我实际上是在写它,但这是主要的想法:

<?php

if(array_key_exists('sendForm' , $_POST))
{
 echo $_POST['someName']; //will show the value of the selected option
}
else
{
?>
<form method='post' action=''>
<select name='someName'>
<option value='value1'>Something1</option>
<option value='value2'>Something2</option>
<option value='value3'>Something3</option>
</select>
<br />
<input type='submit' name='sendForm' value='Submit!'>
</form>
<?php
}
?>

答案 1 :(得分:0)

假设(并且对您的问题做出了很多假设):

  1. 您使用的是纯PHP和HTML表单(没有javascript)和
  2. 您已经可以成功将记录插入数据库(因为您提到“表格”)和
  3. 该表包含AUTO_INCREMENT主键ID列
  4. 您可以使用PHP的mysql_insert_id()函数从当前连接中检索插入数据库的最后一条记录,例如:

    $last_record = mysql_query("SELECT * FROM table WHERE id = " . mysql_insert_id());

答案 2 :(得分:0)

<label for='formCountries[]'>Select the countries that you have visited:</label><br>
<select multiple="multiple" name="formCountries[]">
    <option value="US">United States</option>
    <option value="UK">United Kingdom</option>
    <option value="France">France</option>
    <option value="Mexico">Mexico</option>
    <option value="Russia">Russia</option>
    <option value="Japan">Japan</option>
</select>

处理此字段的PHP代码与复选框代码非常相似。 $ _POST ['formCountries']返回所选值的数组。

<?php
if(isset($_POST['formSubmit']))
{
  $aCountries = $_POST['formCountries'];
  if(!isset($aCountries))
  {
    echo("<p>You didn't select any countries!</p>\n");
  }
  else
  {
    $nCountries = count($aCountries);
    echo("<p>You selected $nCountries countries: ");
    for($i=0; $i < $nCountries; $i++)
    {
      echo($aCountries[$i] . " ");
    }
    echo("</p>");
  }
}
?>