我正在使用AngularJS和codeigniter。在这里,我想将我的emp_id
从AngularJS控制器传递给codeigniter控制器。
这里我使用$http.post
将我的id传递给php。但是我没有在php控制器中获得任何id。我也尝试过其他$http
方法,但我无法做到。
Angular js控制器
angular.module('Myapp').controller('MYcntroller', function ($rootScope, $scope, $http, $timeout) {
$scope.$on('$viewContentLoaded', function() {
App.initAjax(); // initialize core components
Layout.setSidebarMenuActiveLink('set', $('#sidebar_menu_link_empmng')); // set profile link active in sidebar menu
});
// set sidebar closed and body solid layout mode
$rootScope.settings.layout.pageBodySolid = true;
$rootScope.settings.layout.pageSidebarClosed = false;
var emp_id = 100;
$http.post(base_url+"CI_controller/getData", {'emp_id': emp_id})
.success(function (response) {
// alert(response)
$scope.data = response.data
});
});
Php控制器
public function getData() {
//here $emp_id is null why?
$emp_id = $this->input->post('emp_id');
$emp_data=$this->model->employee_details($emp_id );
echo '{"data":'.json_encode($emp_data).'}';
}
答案 0 :(得分:0)
像这样使用http帖子。
$http.post(base_url+"CI_controller/getData", {"emp_id": emp_id})
.success(function (response) {
// alert(response)
$scope.data = response.data
});
因为JSON Object键必须是字符串(即用双引号括起来的字符序列“)。