【问题标题】:Can't get drop down list value from html in php无法从 php 中的 html 获取下拉列表值
【发布时间】:2015-03-02 02:44:05
【问题描述】:

我的第一个 php 代码从表“mytable”中获取值,分别是一月、二月和三月。效果很好,我可以在下拉列表中看到月、一月、二月和三月。我的问题是在第二个 php 代码中,当我单击搜索按钮时,没有任何反应。我期望它做的是从下拉列表中打印出值,但遗憾的是,我什么也没得到。

<select name="monthchoice">
<option value="">Month</option>; 

<?php   
$request="SELECT date FROM mytable WHERE username='qwe'";
$result=mysqli_query($con, $request);
while($fetch = mysqli_fetch_assoc($result))
{
echo '<option value="'.$fetch['date'].'">'.$fetch['date'].'</option>'; 
}
?>

</select>
<input type="submit" value="Search" name="submit"/>

<?php
if(isset($_POST["submit"]))
{
    if(!empty($_POST['monthchoice']))
        {
        $monthchoice1=$_POST['monthchoice'];
        echo "<br>";
        echo $monthchoice1;
        }
    else
        {
        echo "<br>";
        echo 'Please choose a month!';
        }
}
?>

【问题讨论】:

  • 哦,废话,我忘了将提交按钮放在表单中,这就是为什么我什么都没有得到!让我尝试修复它。
  • 哈哈哈,有时候我们完全有能力解决自己的问题..
  • &lt;option value=""&gt;Month&lt;/option&gt;; 中的分号不应该在那里......另外,你至少得到“请选择一个月!”吗?
  • @Fev 哈哈,当您调试自己的问题并得到“我怎么可能错过这个??!?!”的反应时,这是一种很棒的感觉。
  • @ Robert Rossmann 在我将下拉列表和提交按钮放入表单后,我得到了它。谢谢

标签: php html drop-down-menu


【解决方案1】:

您是否使用 post 方法将您的选择和输入包装在表单标签中?

<form action="" method="post">
<select name="monthchoice">
<option value="">Month</option>; 

<?php   
$request="SELECT date FROM mytable WHERE username='qwe'";
$result=mysqli_query($con, $request);
while($fetch = mysqli_fetch_assoc($result))
{
echo '<option value="'.$fetch['date'].'">'.$fetch['date'].'</option>'; 
}
?>

</select>
<input type="submit" value="Search" name="submit"/>

<?php
if(isset($_POST["submit"]))
{
    if(!empty($_POST['monthchoice']))
        {
        $monthchoice1=$_POST['monthchoice'];
        echo "<br>";
        echo $monthchoice1;
        }
    else
        {
        echo "<br>";
        echo 'Please choose a month!';
        }
}
?>

</form>

【讨论】:

  • 谢谢!我一直在阅读我的代码,看看我可能出错的地方,我太专注于 php 而没有检查我的 html 代码。在意识到甚至没有表格开始后,我立即将其放入并对结果感到满意。
  • 一个容易犯的错误,有时是小东西弄乱了你的代码。感谢您检查我的答案是否正确。 :)
【解决方案2】:

我认为你不使用标签形式。

【讨论】:

  • 是的,在我痴迷地阅读了代码中的每个单词之后,我意识到我没有使用表单。我想说谢谢你,因为你的回答是对的。
猜你喜欢
  • 1970-01-01
  • 2018-01-25
  • 1970-01-01
  • 2021-03-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-27
  • 1970-01-01
相关资源
最近更新 更多