Javascript 如何在$http.post()之后从angular导航到php页面

Javascript 如何在$http.post()之后从angular导航到php页面,javascript,php,angularjs,http,Javascript,Php,Angularjs,Http,现在我有了一个由angular js控制器管理的php页面“userreq.php”。单击一个按钮,我调用了一个函数,该函数将数据发布到另一个php页面“checkout.php” 这就是我发布它的方式。现在我希望页面在变量发布后导航到checkout.php,以便我可以在checkout.php中使用该变量。如何实现这一点。在控制器中添加$httpParamSerializerJQLike,并将数据作为查询参数传递 例如: var url = 'checkout.php'; var data

现在我有了一个由angular js控制器管理的php页面“userreq.php”。单击一个按钮,我调用了一个函数,该函数将数据发布到另一个php页面“checkout.php”


这就是我发布它的方式。现在我希望页面在变量发布后导航到checkout.php,以便我可以在checkout.php中使用该变量。如何实现这一点。

在控制器中添加
$httpParamSerializerJQLike
,并将数据作为查询参数传递

例如:

var url = 'checkout.php'; 
var data = { id: 1, name: 'foo' };

$http({
    url: url,
    method: "POST",
    data: data
})
.success(function(response) {
    console.log(response);
    window.location.href = url + '?' + $httpParamSerializerJQLike(data);
});
在php中,从
$\u GET
检索数据:

$field = $_GET[$field];
// Output: array( 'id' => 1, 'name' => 'foo' )

您可以使用window.location.href='url';在你的成功函数中。但这是正确的,http post不会有任何效果。我是angular新手,因此可能会出错。根据您的需要,您可以简单地使用window.location传递参数,而不是使用ajax$scope.checkout=function(){$http({url:'checkout.php',方法:'post',数据:{total:$scope.total},标题:{'Content-Type':'application/x-www-form-urlencoded;charset=UTF-8'}})。成功(函数(数据、状态、标题、配置){window.location.href=“checkout.php”})。错误(函数(数据、状态、标题、配置){console.log(“not done”);})在checkout.php中,我正在做,但是我得到一个错误,总数没有定义感谢您的帮助,先生。但是实际上,如果您想使用POST而不是GET see,我需要传递一个数组
$field = $_GET[$field];
// Output: array( 'id' => 1, 'name' => 'foo' )