我不会在哪里出错。我通过ajax请求从主页数据发送到somepage.php。在某些情况下,somepage.php会将用户重定向到显示用户页面的someotherpage.php。重定向由标题('location:'。$ url)进行,(所以$ url处理someotherpage.php)问题是重定向会丢失从初始ajax请求发布的数据。所以我选择通过以下方式对用户进行重定向:
$data = $_POST['data'];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
exit;
问题是我在点击someotherpage.php时已经没有帖子数据了。有人可以帮忙吗?
答案 0 :(得分:1)
POST仅持续一个请求,因此在重定向时肯定会丢失它。
在重定向上将其分配给SESSION变量:
session_start();
$_SESSION['post_data'] = $_POST;
// Redirect the user
然后,在重定向到页面:
$data = $_SESSION['post_data'];
unset($_SESSION['post_data']);
答案 1 :(得分:0)
你的问题已经有答案了。
重定向页面后,发布的数据也将消失。
要全局发布数据,您必须使用$_SESSION
来存储发布的数据。因为你知道$_SESSION
在其中是超级全球性的。