在重定向之前传递php变量

时间:2012-11-06 13:11:18

标签: php forms variables redirect

任务:

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

描述:

  • 表单操作转到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>
    

摘要:

  • Basicaly我正在寻找一些东西,它会在重定向之前将page2.php中的$ email变量传递给page3.php。

*更新 * 我连续两天一直在努力,现在我已经无意中遇到了一个解决方案。如果有人有同样的问题或想知道,我做了什么,我使用$ _SESSION。

在页面2.php的表格中,我在页面顶部使用了这段代码:

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

在page3.php上我然后调用会话变量:

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

1 个答案:

答案 0 :(得分:1)

在page2.php中使用此代码

header( 'Location: http://www.yoursite.com/page3.php?email='.$_POST['email'] ) ;