PHP - HTML - 即使在提交后也显示输入表单

时间:2013-07-28 07:43:23

标签: php html forms post

我有两个输入表单,并希望第二个输入表单即使在提交时仍保留在页面上。

<div id="first">
    <form method="POST">
        Number: <input type="text" name="number"><br>
        <input type="submit" value="Submit">
    </form><br>
</div>

<div id="second">
    <?php
    if (isset($_POST['number']) && !empty($_POST['number'])){
        ?>
        <form method="POST">
            Name: <input type="text" name="name"><br>
            <input type="submit" value="Submit">
        </form><br>
        <?php
    }
    ?>
</div>

<div id="third">
    <?php
    if (isset($_POST['name']) && !empty($_POST['name'])){
        echo "TEST";
    }
    ?>
</div>

当我提交第一个表单时,第二个表单正确显示,因为$ _POST ['number']不为空。但是,“号码”的内容会在我提交后立即消失。

然后,当我提交第二个表单时,单词“TEST”会正确显示,但表单本身会消失,因为第一个表单中的$ _POST ['number']现在为空。

我需要找到一种方法以某种方式在第一种形式中保存数字的值,以便第二种形式不会消失。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

您可以添加隐藏字段:

<input type="hidden" name="number" value="<?php echo $_POST['number']; ?>">

然后您的第二个表格将更改为:

<form method="POST">
    Name: <input type="text" name="name"><br>
    <input type="hidden" name="number" value="<?php echo $_POST['number']; ?>">
    <input type="submit" value="Submit">
</form