【问题标题】:PHP get selected value from select box?PHP从选择框中获取选定的值?
【发布时间】:2013-09-06 10:47:17
【问题描述】:

这是我获取数据库数据以选择框的代码,我想获取选定的值。我尝试了很多方法,但我错过了一些东西。帮帮我

<form id="search" action="" method="post" >
   <select name="owner" id="owner">
   <?php 
      $sql = mysql_query("SELECT designation FROM designation");
      while ($row = mysql_fetch_array($sql)){
      echo '<option value="'.$row['designation'].'">'.$row['designation'].'</option>';
      }
      ?>
   </select>
   <input type="submit" value="Search">
</form>

【问题讨论】:

  • 试试&lt;?php echo $_POST['owner']; ?&gt;
  • 为了将来参考,您可以这样做来查看发送到脚本的所有表单数据:print_r($_POST);
  • 您在数据库表中有指定字段?
  • 您希望在后端还是前端选择值?

标签: php mysql


【解决方案1】:

由于您没有为表单指定操作,默认情况下会将帖子值发送到同一页面。

有关操作价值的更多信息,请参阅this

因此,在您拥有表单的同一页面中,您应该添加一个

if(isset($_POST['owner']))
{
    // Do some stuff
}
else
{
    // Print the form
}

【讨论】:

    【解决方案2】:

    首先确保包含操作。其次,要获得一个选择标签的 POST 请求,您所要做的就是:

    $_POST["owner"];
    

    【讨论】:

    • Action可以为空,不需要填写。 POST request of a select tag 是什么意思?也许value of field sent using POST
    【解决方案3】:

    $_POST['owner'] 包含提交表单后选择框的值。而$_POST 包含您通过表单提交的输入元素的所有值。如果您print_r($_POST); 它会显示通过表单提交的所有值表格。

    如果你

    echo $_POST['owner'];//Will display the value of your selected value in the select box.
    

    【讨论】:

      【解决方案4】:
      <form id="search" action="" method="post" >
                  <select name="owner" id="owner">
                  <?php 
                   $owner="rejayi"
                  $sql = mysql_query("SELECT designation FROM designation");
                  while ($row = mysql_fetch_array($sql)){
                     if($row['designation'] ==  $owner){
           echo '<option value="'.$row['designation'].'" selected="selected">'.$row['designation'].'</option>';
                     }else{
                 echo '<option value="'.$row['designation'].'">'.$row['designation'].'</option>';
                     }
                  }
                  ?>
                  </select>
                  <input type="submit" value="Search">
                  </form>
      

      【讨论】:

        【解决方案5】:

        双引号 (") 放在外面,单引号 (') 放在里面

        例如:

        echo "&lt;option value='".$row['designation']."'&gt;".$row['designation']."&lt;/option&gt;";

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2018-09-19
          • 2019-07-30
          • 2015-01-27
          • 1970-01-01
          • 2017-03-23
          • 2012-10-05
          • 1970-01-01
          相关资源
          最近更新 更多