Return 下拉选择 - php/sql

Return dropdown selection - php/sql

我正在使用 sql 中的值填充下拉框,但我无法将下拉框下拉到 return 值。经过大量搜索,我遇到了很多想法,但 none 都奏效了。感谢任何帮助。

我手上的相关代码如下所示。请温柔点,这对我来说还很陌生!

谢谢。

<?php

echo "<form action=\"theForm\" method=\"GET\">";
echo "<select name=\"courier_select\">";

$query = mysql_query("SELECT DISTINCT(courier) AS courier FROM reviews ORDER BY courier ASC");
while($row = mysql_fetch_array($query)){ echo "<option value=\"courier\">" . $row['courier'] . "</option>"; }

echo "</select>";
echo "</form>";

echo $_GET['theForm'];

?>

因为您明确地将 <option> 元素的 value 属性设置为 couriercourier_select 的值将始终是那个。

需要设置为从数据库中拉取的值,如下:

while( $row = mysql_fetch_array($query) )
{ 
    echo '<option value="'.$row['courier'].'">'.$row['courier'].'</option>'; 
}

现在,当您尝试访问 <select> 元素的值时(根据表单的方法使用 $_GET['courier_select']$_POST['courier_select']),您将获得选定的值。

值得注意的是,mysql_* 系列函数现已弃用,您应该在将此代码投入生产之前研究 MySQLi or PDO 中任一函数的使用。


此外,您似乎对 <form> 元素的工作原理缺乏基本的了解。表单需要提交,action 属性定义提交的数据应该发送到哪里。您需要将 action 属性更新为您网站上处理表单的页面。或者,删除该属性以使表单提交到它所在的页面。

提交表单后(您需要 <button type="submit">Submit</button>),然后您可以使用 $_GET 超全局访问表单的数据(因为您指定了 [= GET 的 25=])或 $_POST 如果您使用 POST 方法。

$_GET$_POST都是数组,它们的key指的是表单元素的名称。所以为了得到courier_select选择框的值,可以使用:

$_GET['courier_select'];