你如何重定向浏览器并在PHP中发送HTTP POST请求?一个header("Location: file.php?foo=bar")HTTP POST请求,如果你愿意的话.
我在PHP中发送标题时遇到了一个令人哭笑不得的问题.我花了大约45分钟在SO和其他网站上阅读,我无法想出我的问题的正当理由.
我需要向另一台服务器发送POST请求,我正在使用PHP header()函数来设置值.我有以下示例代码.
$server = 'http://fakedomain.com';
$server_path = '/';
$request = 'key=value&key2=value2';
header("POST $server_path HTTP/1.1" );
header("Host: $server\r\n" );
header("Content-type: application/x-www-form-urlencoded\r\n" );
header("Content-length: ".strlen($request)."\r\n" );
header("Connection: close\r\n\r\n" );
header($request);
Run Code Online (Sandbox Code Playgroud)
我尝试了各种选项,但每个选项都会在我的日志文件中导致相同的错误
malformed header from script. Bad header=POST / HTTP/1.1: php5.cgi
Run Code Online (Sandbox Code Playgroud)
我是一名经验丰富的PHP程序员,他不需要手动发送HTTP post请求.
我希望代码重定向浏览器,这就是我决定使用此方法的原因.
我做得对吗?
还有其他标准的方式,我只是不知道吗?