如何通过标题函数发送数据,如post

时间:2012-05-30 13:42:34

标签: php post header

我尝试将数据从php文件传递到另一个带有头函数的php文件。那样:

header("location:login.php?userName=$username"); 

(该行出现在第一个php文件中。)问题是数据出现在第二个php文件的url中。喜欢GET。我尝试寻找一些例子,但没有成功。我正在寻找如何使它像POST一样?

3 个答案:

答案 0 :(得分:7)

你做不到。如果你重定向,你将总是有一个GET请求。

一种可能的解决方案(如果目标脚本位于同一个域中)将使用PHP会话将数据存储在服务器上。

答案 1 :(得分:5)

最初建议使用CURL,我现在认为它可能不是最好的解决方案。如果您只是想在脚本之间保留或传递数据,您可能需要查看Sessions,它允许您在脚本之间设置和保留数据。

例如:

脚本1

session_start();

$_SESSION['userName'] = $username;

脚本2

session_start();

if (isset($_SESSION['userName']))
    $username = $_SESSION['userName'];

echo $username;

这将成功传递两个脚本之间的$ username值。只需将任何变量放入$ _SESSION数组中,它们将在整个脚本中可用。

  • 请务必包含session_start();在每个脚本的顶部
  • 还要考虑session_set_cookie_params(),以确保您的会话可以通过您的域名获得和/或与其他网站的会话冲突。

答案 2 :(得分:0)

您可以将PEAR优秀的HTTP_Request2包用于make POST requests