我有3页
Page1.php,page2.php,page3.php
在page1.php中,我有一些隐藏的值,例如'name'
提交page1.php后,它将转到第2页。
然后在page2.php中的一些进程之后,它应该需要自动提交到page3.php(其中page3.php在另一个服务器中)
最后,当我在page3.php中打印$ _POST变量时,我需要获取变量'name'
答案 0 :(得分:3)
您需要查看sessions。
如果您在POST中需要它们,请尝试:
$display = "";
$saveFields = array('one', 'two'); // whitelist of fields to add to the form hidden
foreach ($_POST as $key => $val) {
if (!empty($val) && in_array($key, $saveFields))
$display .= '<input type="hidden" name="'.$key.'" value="'.$val.'" />';
}
echo $display;
应该让你到达你想去的地方。白名单只是确保没有注入不需要的随机内容。
答案 1 :(得分:3)
你可以把它贴在session
中<?php
session_start();
if (!isset($_SESSION['count'])) {
$_SESSION['count'] = 0;
} else {
$_SESSION['count']++;
}
?>
或者你可以在page2.php的隐藏变量中传递它们,如果它有一个表单...
答案 2 :(得分:1)
(1)选项也是在第2页上添加隐藏输入。
(2)选项是将page1的名称中的值设置为session并在第3页上使用它
答案 3 :(得分:0)
有几种解决方案:
在简单的情况下,将参数传递为GET参数page2.php?name = ...或使用隐藏表单字段是最佳解决方案
答案 4 :(得分:0)
这对我来说似乎很简单,第一页有一个名为name
的隐藏值。第2页应该检索帖子$_POST['name']
并将其作为隐藏字段打印在第2页。将其发布到第3页后,您可以使用$_POST['name']
相同的方式检索它。
实际上,如果数据完全相同并且一直被带到第3页,为什么你甚至需要它?你能否在第3页宣布它?
答案 5 :(得分:0)
好的,我读到这个的方式是在你的第一页上有一个带有表单的UI。然后将表单提交给第2页进行处理。处理完成后,您希望将用户重定向到另一个站点(或服务器,不一定要有所作为)。
如果我做对了,你应该做的就是这样;而不是使用header(); function(php),打印一个带有隐藏表单的空白页面,其中包含您要发送的所有详细信息,并使用javascript模拟用户“提交”表单。
&LT; div style =“display:none;”&gt;
&LT; form action =“https://mywebpage.com/myscript.php”method = POST&gt;
&LT;输入类型=隐藏名称=“key_1”值=“value_1”&gt;
&LT;输入类型=隐藏名称=“key_2”值=“value_2”&gt;
&LT; input type = hidden name =“key_3”value =“value_3”&gt;
&LT; input type = submit id =“formButton”style =“visibility:hidden;”&gt;
&LT; script language =“javascript”&gt;
的document.getElementById( “formButton”)。点击()
&LT; /形式&GT;
&LT; / DIV&GT;