2017-04-02 56 views
0

我已成功从我的MySQL数据库填充下拉列表。我现在希望能够从此下拉列表中提取价值。当我从下拉菜单中提取值时,它只是列表中值的位置值。从SQL数据库中填充的下拉列表中获取值

这里是楼下的工作降:

<?php 

include_once("connection.php"); 

function fill_name($connect) 
{ 
     $output = ''; 
     $sql = "SELECT name, id FROM notes"; 
     $result = mysqli_query($connect, $sql); 
     while($row = mysqli_fetch_array($result)) 
     { 
      $output .= '<option value="'.$row["id"].'">'.$row["name"].'</option>'; 
     } 
     return $output; 
} 

?> 

<!DOCTYPE html> 
<html> 
     <head> 
      <title>Patient Notes View</title> 
      <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" /> 
      </script> 
     </head> 
     <body> 
      <br /><br /> 
      <div class="container"> 
       <form action="dropdown_selection.php" method="post"> 
        <select name="name" id="name"> 
          <option value="">Show All Patients</option> 
          <?php echo fill_name($connect); ?> 
        </select> 
        <input type="submit" name="submit" value="Submit" /> 

       </form> 
      </div> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script> 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script> 

     </body> 
</html> 

这里是那么它指的是页面:

<?php 
$patient_name = $_POST['name']; 
echo $patient_name 

?> 

输出或者是1,2,3,4,但我我希望它输出在下拉列表中选择的内容。

Thnks对您有所帮助

+0

值不与标识匹配? –

+0

输出正确,因为您将选项值设置为ID,而不是NAME - >

+0

该数字是该项目的ID,不一定它的位置。根据'id'将'value'作为'name',而不是'id'或者查询下一页。 – chris85

回答

0

您可以更改元素的value ,或者删除它们。如果元素没有值,则其内容将作为值发送。

如果选择此选项,则此属性的内容表示要与表单一起提交的值。如果省略此属性,则该值取自选项元素的文本内容。

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/option

因此,要么:

$output .= '<option value="'.$row["name"].'">'.$row["name"].'</option>'; 

$output .= '<option>'.$row["name"].'</option>'; 
0

输出是因为你设置的选项值是ID,不NAME号码是正确的 - >因此<option value="'.$row["id"].'">ID小号

+0

是你自己的问题的答案? ^^ – OldPadawan

相关问题