首页 > 解决方案 > 如何在我的 HTML 表单中显示选定的用户输入?

问题描述

我有一个将用户数据保存到 MySQL 数据库的 PHP 表单。

我想向用户显示有关他们的哪些信息并以表格形式显示,以便他们更新或编辑值。

我在 PHP 循环中从数据库中获取用户保存的数据并将其显示给用户以便他们更新或编辑它时遇到问题。

下面是一段代码:

            <?php
                $id = $_GET['id'];
                $conn = mysqli_connect('localhost', 'phpmyadmin', 'Test@2000', 'user');

                $sql1 = "SELECT * FROM usr WHERE id='$id'";
                $result = mysqli_query($conn, $sql1);
                $row = mysqli_fetch_assoc($result);
            ?>

            <fieldset><label>Birthday</label>
                <select name="birthday">
                <?php
                    for ($i = 1300; $i <= 1397; $i++) {
                        echo "<option >$i</option>";
                    }
                ?>
                </select>
                    <fieldset>
                <button name="btn" type="submit" id="contact-submit">Submit</button>
            </fieldset>
        </form>
    </div>
</body>
</html>

我想在表单的选择输入中显示用户最初选择的生日值,以便用户编辑或更新。

标签: phphtmlmysql

解决方案


我以这种方式编辑了您的代码。

<?php
$id = $_GET['id'];
$conn = mysqli_connect('localhost', 'phpmyadmin', 'Test@2000', 'user');

$sql1 = "SELECT * FROM usr WHERE id='$id'";
$result = mysqli_query($conn, $sql1);
$row = mysqli_fetch_assoc($result);
?>

        <fieldset><label>Birthday</label>
            <select name="birthday">
            <?php for ($i = 1300; $i <= 1397; $i++) {
                echo "<option" . (($i == $row['birthdayYear']) ? 'selected="true"' : '') . ">$i</option>";
            }
            ?>
            </select>
                <fieldset>
            <button name="btn" type="submit" id="contact-submit">Submit</button>
        </fieldset>
    </form>
</div>
</body>
</html>

希望这会有所帮助,谢谢。


推荐阅读