PHP页面跳转 丢失 $_POST 数据test.php 内容如下$_POST["aa"] = 111;
header("Location: " ."/test1.php");
exit(0);
test1.php 代码如下var_export($_POST);
在URL中 输入http://localhost/test.php 跳转到了 test1.php页面。
但是输出的 $_POST内容为空...求助各位大侠,问题到底出在哪儿了。 

解决方案 »

  1.   

    你知道$_POST是指什么吗   
      

  2.   

    HTTP POST 变量:$_POST
    注意: 在 PHP 4.1.0 及以后版本使用。之前的版本,使用 $HTTP_POST_VARS。通过 HTTP POST 方法传递的变量组成的数组。是自动全局变量。这是一个“superglobal”,或者可以描述为自动全局变量。这只不过意味这它在所有的脚本中都有效。在函数或方法中不需要使用 global $_POST; 来访问它,就如同使用 $HTTP_POST_VARS 一样。$HTTP_POST_VARS 包含着同样的信息,但是不是一个自动全局变量(注意:$HTTP_POST_VARS 和 $_POST 是不同的变量,PHP 处理它们的方式不同)。如果设置了 register_globals 指令,这些变量也在所有脚本中可用;也就是,分离了 $_POST 和 $HTTP_POST_VARS 数组。相关信息,请参阅安全的相关章节使用 Register Globals。这些单独的全局变量不是自动全局变量。 只有在form表单提交时,才用post在后台接收数据。
      

  3.   

    这样能获取到才怪,你根本就没有吧$_POST数据传递过去,找个http协议手册去看看你可以通过url参数传递数据,test1.php用$_GET获取$_POST["aa"] = 111;
    header("Location: " ."/test1.php?aa=".$_POST["aa"]);
      

  4.   

    谢谢楼上三位回答。$_POST明白了一点。
    请问 后台处理的数据,如何传回页面?不用$_POST 用什么?
      

  5.   

    header("Location:/test1.php")只是告诉浏览器,跳转到test1.php.
    想不通为何要这么设计程序,原始数据直接提交到test1.php处理,轻松解决了不是。
      

  6.   

    额......   你还是瞅瞅PHP的CURL吧!
      

  7.   

    想在自己的程序里面实现页面,代码分离。
    比如在 test.php 中实现逻辑处理之后,想返回到 test1.php页面。
      

  8.   

    test.php中就可以完全包含逻辑处理程序和页面效果呀。
    数据提交到test.php => test.php实现逻辑处理,保存结果 => test.php中的视图代码获取逻辑处理的结果,并输出。