我访问了一个MySql数据库,从相关表中检索了值并使用以下命令将它们放在下拉列表中:
$material_query= "SELECT material FROM materials";
$material_query_run = mysql_query($material_query);
echo "<select>";
while ($material_query_array= mysql_fetch_array($material_query_run) ){
echo "<option value='' >".$material_query_array['material']."</option>";
}echo "</select>";
我现在如何将变量中的下拉列表中的选定值存储起来?我认为我需要使用POST,但我无法弄清楚如何。
答案 0 :(得分:1)
因此,select元素需要位于表单中,然后您可以提交该表单,然后可以处理提交的数据(通过post或get)。
您的选择框需要具有名称属性才能识别。您还需要在选项元素的value属性中包含一个值,因为这是发送的数据。
例如,在您的网页上(例如page.php),您可以将当前代码放在html表单标记中:
// The Form
<form action="page.php" method="post">
<?php
$material_query = "SELECT material FROM materials";
$material_query_run = mysql_query( $material_query );
echo "<select name='mySelect'>";
while ( $material_query_array = mysql_fetch_array( $material_query_run ) ) {
echo "<option value='".$material_query_array['material']."' >".$material_query_array['material']."</option>";
}
echo "</select>";
?>
<input type="submit" name="submit"/>
</form>
//Process the form
//check if form is submitted
if ( isset( $_POST['submit'] ) ) {
//is submitted
$variable = $_POST['mySelect'];
//DO STUFF WITH DATA
}
所以我在这里完成了以下工作:
答案 1 :(得分:0)
您需要以下内容:
<form action="post.php" method="post" name="select_form">
<?php
$material_query="SELECT material FROM materials";
$material_query_run =mysql_query($material_query);
echo "<select name=\"selectbox\">";
while ($material_query_array= mysql_fetch_array($material_query_run) ){
echo "<option value='".$material_query_array['material']."'>".$material_query_array['material']."</option>";
}
echo "</select>";
?>
<input type="submit" value="Submit" name="submit">
</form>
然后在post.php
<?php
if($_POST){
$select=$_POST['selectbox'];
}
?>
在旁注上使用PDO(http://www.php.net/manual/en/book.pdo.php)或MySQLI(http://uk3.php.net/manual/en/book.mysqli.php),因为MySql接口已过时。
答案 2 :(得分:0)
当用户点击提交按钮时,需要使用GET或POST将数据发送到PHP处理器。在处理器中,您将像任何其他表单元素一样访问SELECT字段值。
<form action="processor.php" method="POST">
// FORM ELEMENTS HERE
<input type="submit" value="Go!">
</form>
在您的处理器中:
<?php
$selectbox = $_POST['selectbox'];
现在,您可以在脚本中清理并使用变量$selectbox
,或将其传递给您的数据库。