2

如果满足条件,我想将我的页面重定向到另一个页面,例如 samplepage1.php

$id = $_POST['id'];
$name=$_POST['name'];
if($max>$count){
//action on the same page
}
else{
//redirect to URL:index.php/samplepage2.php with the values $id & $name in POST METHOD
}

我需要一个解决方案,以便必须通过帖子将值发布到“samplepage2.php”,但严格不使用javascript来实现自动提交(我不喜欢javascript的帮助,好像用户可以在浏览器中将其关闭)

4

3 回答 3

3

@nickb 对他的评论是正确的。如果您的表单或其他任何东西处理 javascript 并且会影响您的页面可以做什么和不可以做什么,那么试图弄清楚如何容纳 $_POST 是没有意义的。

但是,处理此问题的一种方法是将您的 $_POST 切换到该页面的 $_SESSION。

所以像:

$_SESSION['form1'] = $_POST;

当你到达下一页时(确保在每一页的开头都有 session_start() ),如果你真的想的话,你可以把它切换回来。不要忘记unset($_SESSION['form1'])一旦你完成它。

于 2012-06-27T14:25:01.673 回答
1

试试这个 :

$id = $_POST['id'];
$name=$_POST['name'];
if($max>$count){
//action on the same page
}
else{
$url = 'http://yourdomain.com/samplepage2.php';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, 'id='.$id);
curl_exec($ch);
curl_close($ch);$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, 'name='.$name);
curl_exec($ch);
curl_close($ch); 
}
于 2012-06-27T14:29:35.143 回答
1

如果curl在您的服务器上启用,则您可以使用 curl 将POST数据发送到另一个表单,

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "index.php/samplepage2.php");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, true);

$data = array(
    'id' => 'value of id',
    'name' => 'value of name'
);

curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$output = curl_exec($ch);
$info = curl_getinfo($ch);
curl_close($ch);
于 2012-06-27T14:37:02.580 回答