猿问

PHP-通过POST重定向和发送数据

我有一个在线网关,要求将HTML表单与隐藏字段一起提交。我需要通过没有任何HTML形式的PHP脚本来执行此操作(我具有数据库中隐藏字段的数据)


要通过GET发送数据,请执行以下操作:


header('Location: http://www.provider.com/process.jsp?id=12345&name=John');

并通过POST发送数据?


慕雪6442864
浏览 714回答 3
3回答

郎朗坤

您无法使用PHP执行此操作。正如其他人所说,您可以使用cURL-但是PHP代码成为客户端而不是浏览器。如果必须使用POST,那么唯一的方法就是使用PHP生成填充的表单,然后使用window.onload钩子调用javascript提交表单。C。

慕运维8079593

如果您希望避免执行curl调用并让浏览器像正常情况一样重定向并模仿POST调用,则可以采用另一种解决方案:保存帖子并进行临时重定向:function post_redirect($url) {    $_SESSION['post_data'] = $_POST;    header('Location: ' . $url);}然后总是检查会话变量post_data:if (isset($_SESSION['post_data'])) {    $_POST = $_SESSION['post_data'];    $_SERVER['REQUEST_METHOD'] = 'POST';    unset($_SESSION['post_data']);}将会缺少一些组件,例如apache_request_headers()将不会显示POST Content标头等。
随时随地看视频慕课网APP
我要回答