将整个$ _POST变量传递给弹出窗口

时间:2010-01-05 23:33:45

标签: php

我有一个接受相当大的POST数组的PHP网页。我在页面上有一个按钮,打开一个PHP弹出窗口。有没有一种方便的方法将整个$ _POST数组传递给弹出窗口?

编辑: 这是一个完全不同的页面。我用JavaScript打开它:window.open

4 个答案:

答案 0 :(得分:0)

最方便的方法是使用session variables。如果你的POST数据非常大,你可能会遇到一些性能问题,所以要小心。

发布接收页面:

session_start();
//...
$_SESSION['post_for_popup'] = $_POST;

弹出窗口:

session_start();
//...
do_something($_SESSION['post_for_popup']);

答案 1 :(得分:0)

尝试

var_export($_POST,1);

答案 2 :(得分:0)

好吧,你可以使用$_SESSION变量。我假设弹出窗口是一个完全独立的页面,因此没有其他可行的方法来传输变量而不进行回发。所以你可以这样做:

index.php:

session_start();
$_SESSION['post'] = $_POST;

popup.php:

session_start();
$_POST = $_SESSION['post'];

希望有所帮助。

答案 3 :(得分:0)

你可以做两件事之一。

首先,您可以将其分配给会话变量,并从弹出窗口加载该会话变量。

或者你可以做一个快速的脚本来迭代$ _POST数组并将它们作为请求变量添加到url上。这可能不适合你,因为你的$ _POST很大。

您可以使用header()命令执行第二个选项并将其作为post vars添加到标题中,但我不确定添加的值是什么。

如果我这样做,我会把它放进会话中。即使是巨大的post var也不会占用那么多会话内存。