【问题标题】:Not getting desired value from dropdown PHP没有从下拉 PHP 中获得所需的值
【发布时间】:2020-04-23 19:52:31
【问题描述】:

在用户从下拉列表中的国家/地区列表中选择一个值后,我正在尝试更新页面以显示所选国家/地区。当我尝试回显 $selected_country 时,值为“”。由于某种原因,当表单提交时,值没有被更新。有人可以帮忙吗?

<div class="row pt-4 pb-4">
            <div class="col-4">
                <h2 class="table_title">Travel Restrictions</h2>
                <p class="table_title">
                    See what countries you can travel to.
                    <?php if (isset($_POST['submit_dropdown'])) {
                                $selected_country = $_POST['submit_dropdown'];
                                echo $selected_country;
                    }
                      ?>
                </p>
            </div>

            <div <?php echo $css_tag_dropdown ?>>
                <div class="text-center">
                    <p class="table_title">
                        Select the originating country.
                    </p>
                    <form method="post">
                        <select class="form-control" name="submit_dropdown" onchange="this.form.submit();">
                            <option selected>Select country</option>
                            <?php while ($row = mysqli_fetch_array($dropdown_origins)) :; ?><option value=""><?php echo $row[0]; ?></option><?php endwhile; ?>
                        </select>
                    </form>
                </div>
                <div class="col"></div>
            </div>
        </div>

【问题讨论】:

  • 我希望这只是学习家庭样本,与生产没有任何共同之处。太不安全了!请参阅 MVC、htmlspecialchars、mysqli_real_escape_string、PDO。祝你好运!

标签: php dropdown


【解决方案1】:

$_POST['submit_dropdown'] 包含所选选项的 value 属性,因此您应该根据国家/地区在您的 while 循环中填充该属性:

<option value="<?php echo "$row[0] country code here"; ?>"><?php echo $row[0]; ?></option>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-28
    • 1970-01-01
    • 1970-01-01
    • 2017-09-27
    • 1970-01-01
    • 2011-04-24
    • 2013-07-27
    相关资源
    最近更新 更多