【问题标题】:The $_GET[] variables become null after form is submitted [closed]提交表单后,$_GET[] 变量变为空 [关闭]
【发布时间】:2015-08-14 00:46:31
【问题描述】:

$emailgot$codepass 在提交表单之前打印得很好。 提交后$emailgot 打印为空白。

表单的动作部分指的是同一个页面。

提交表单后未定义的变量代码和电子邮件。

我需要以某种方式传递它们吗?

谢谢。

网址已填写电子邮件和代码字段。

<body>
    <header style="padding-top: 2em;padding-left: 2em;">

        <h2> Password Reset </h2>
        <div>
            <header id="messagebox" style="padding-left: 3em;">
            <?php
                if($_POST)
                {
                    echo $message;
                }
            ?>
            </header>
        </div>
    </header>   
    <section class="50% row uniform" style="padding-top: 2em;">

        <form action='passreset.php?code='$codepass'&email='$emailgot'' method="post" class="12u 50% row uniform">

            <div class="8u 6u$(3) 12u$(3) -1u">
                <p>Password : </p>
            </div>
            <div class="8u 6u$(2) 12u$(3) -1u">
                <input type="password" name="password" id="password" value="" placeholder="Password" required=""/>
            </div>
            <div class="8u 6u$(3) 12u$(3) -1u">
                <p>Confirm Password : </p>
            </div>
            <div class="8u 6u$(2) 12u$(3) -1u">
                <input type="password" name="cpassword" id="cpassword" value="" placeholder="Confirm Password" required=""/>
            </div>
            <div class="12u$">
                <ul class="actions">
                    <li><input value="Submit" class="special big" type="submit"></li>
                </ul>
            </div>
        </form>
    </section>
</body>

【问题讨论】:

  • 您对$_POST[]$_GET 感到困惑吗? PS:在$_GET[] 中,您的网址中将有参数,而不是在$_POST[] 中相反
  • PHP 是一种脚本语言,范围内的变量在页面重新加载后不会保留,您需要在会话或表单中传递您想要传输的值。
  • 我如何在表单中传递它们?
  • 你没有用 PHP 来呼应......你只是在使用文字 $emailgot。

标签: php forms mysqli


【解决方案1】:
<form action='passreset.php?code=<?= $codepass ?>&email=<?= $emailgot ?>' method="post" class="12u 50% row uniform">

如果您不打开代码块,则只是使用文字 $codepass$emailgot 而不是 PHP 中的值。

&lt;?= ... ?&gt;&lt;?php echo ... ?&gt; 的短打开标记

更新:您也没有使用单引号。由于您使用了单引号,您将在 passreset.php?code= 结束属性 action

【讨论】:

  • 好的thanx..我如何再次在脚本中使用它们?
  • 使用你建议的post方法后……URL还是通过了
  • 您是否删除了code= 后面的单引号?看看我的底部段落。
  • 这个 wrked
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-11-27
  • 1970-01-01
  • 2012-08-16
  • 2010-10-25
  • 1970-01-01
  • 2017-01-01
  • 1970-01-01
相关资源
最近更新 更多