我尝试使用AngularJS和PHP分离前端和后端,但我无法从前端传递参数。奇怪的是,我能够将参数放入数据库然后回显它。但在此之前,我无法回应参数。我尝试使用 isset 来判断参数是否传递给后端但它没有工作。
请求标题:
从后端返回的参数:
我希望更改参数" page"到2,这是从前端传递的数字,以下是后端验证码的一部分:
<?php
require_once 'config.php';
//current page
$page = 1;
$post = json_decode(file_get_contents("php://input"));
if (isset($post)){
$page = $post -> page;
}else{
$page =3;
}
返回的数据是3,这不是发布的数字。
来自前端的Ajax(AngularJS):
$scope.selectPage = function(page){
if(page<1 || page>$scope.pages){
}else{
$http.post('getMessage.php',{
'page':2
}).then(
function success(){
$scope.getAllMessage();
}, function error() {
console.log("select failed");
});
}
};
后端创建的Json数据:
while ($messages = mysqli_fetch_assoc($result)) {
if ($outpm != "") {
$outpm .= ",";
}
$outpm .= '{"mid":"' . $messages["mid"] . '",';
$outpm .= '"uid":"' . $messages["uid"] . '",';
$outpm .= '"username":"' . $messages["username"] . '",';
$outpm .= '"content":"' . $messages["content"] . '",';
$outpm .= '"date":"' . $messages["date"] . '",';
$outpm .= '"parent_id":"' . $messages["parent_id"] . '"}';
};
$outpp .= '{"page":"' . $page . '",';
$outpp .= '"offset":"' . $offset . '",';
$outpp .= '"total_msg":"' . $total_msg . '",';
$outpp .= '"total_page":"' . $total_page . '",';
$outpp .= '"show_page":"' . $show_page . '",';
$outpp .= '"page_offset":"' . $page_offset . '",';
$outpp .= '"start":"' . $start . '",';
$outpp .= '"end":"' . $end . '"}';
//number of
$outp = '{"messages":[' . $outpm . '],"pagination":' . $outpp . '}';