0

任务:

  • 我想使用从 page1.php 到 page3.php 的 post 方法从表单(表单操作 = page2.php)传递一个输入变量(我们称之为 $email)

说明:

  • 表单操作转到 page2.php,然后立即重定向到 page3.php。page2.php 只是处理来自 page1.php 的表单的大量 php 执行。

问题:

  • 我在 page2.php 上获得了变量,但在使用 $email 完成任何操作之前,页面重定向到 page3.php 并且我丢失了数据。我尝试在 page2.php 上制作一个表单,通过自动提交将数据发布,但它不起作用。我试图将表单放在 page2.php 的顶部,并让其余的代码休眠一小段时间,但它确实不起作用。我试图在 if 语句中执行代码的另一部分,if($_SERVER['REQUEST_METHOD'] == "POST")但它也没有工作。

编码:

  • 代码真的没什么特别的。page1.php 包含一个表单,page2.php 包含一些然后重定向的包含,page3.php 是登录页面。

  • page1.php:

    <form action="page2.php" method="POST" id="form1">
    <table>
    <tr>
    <td>E-Mail:</td>
    <td><input type="text" name="email" id="email"></td>
    </tr>
    <input id="submitBtn" style="margin-left: 120px;">
    </table> 
    </form>
    

摘要:

  • 基本上我正在寻找一些东西,它会在重定向之前将 $email 变量从 page2.php 传递到 page3.php。

* 更新* 我已经为此苦苦挣扎了 2 天,现在我偶然发现了一个解决方案。如果有人有同样的问题或想知道,我所做的是,我使用了 $_SESSION。

在指向表单的 page2.php 上,我在页面顶部使用了以下代码:

$var_value = $_POST['email'];
$_SESSION['varname'] = $var_value;

然后在 page3.php 上调用会话变量,如下所示:

$var_value = $_SESSION['varname'];
echo $var_value;
4

1 回答 1

1

在 page2.php 中使用此代码

header( 'Location: http://www.yoursite.com/page3.php?email='.$_POST['email'] ) ;
于 2012-11-06T13:16:52.883 回答