В угловом im с использованием $http.post
для отправки идентификатора скрипту php, чтобы использовать этот идентификатор для запроса mysql.
Это мой контроллер:
function ProjectDetailsCtrl($scope, $http, $timeout, getGoodIdProjectDetails) {
$scope.idProjectDetails = getGoodIdProjectDetails.getId(); //Getting id project
$scope.$emit('LOAD')
$scope.url = 'scripts/findProjectDetails.php';
$http.post($scope.url, { "idProject" : $scope.idProjectDetails}).
success(function(data, status) {
$scope.projectDetails = {};
$scope.projectDetails.details = data;
$scope.$emit('UNLOAD')
})
.
error(function(data, status) {
$scope.data = data || "Request failed";
$scope.status = status;
});
}
idProjectDetails
это число.
Затем скрипт Php:
<?php
$idProject = json_decode($_POST['idProject']);
Php скрипт возвращает этот $idProject
не определен.
Можете ли вы мне помочь?
Edit: Я попробовал этот путь, но мое приложение разбилось с этим:
$http.defaults.headers.post["Content-Type"] = "application/x-www-form-urlencoded";
$http({
method: 'POST',
url: 'scripts/findProjectDetails.php',
data: "idProject" : $scope.idProjectDetails
}).success(function(data, status) {
$scope.projectDetails = {};
$scope.projectDetails.details = data;
console.log(projectDetails.details);
$scope.$emit('UNLOAD')
})
.
error(function(data, status) {
$scope.data = data || "Request failed";
$scope.status = status;
});
С первым примером, в консоли Chrome, то «запрос playload» содержит следующее: {idProject:1}
idProject:1
поэтому я предполагаю, что мои переменное правильно прошел через php-скрипт?
'json_decode ($ _ POST ['idProject']);' не имеет смысла, если '$ scope.idProjectDetails' - это номер, который вы указали. –
Хорошо, $ scope.idprojectДетали - это определенно число, так что имеет смысл? – Simonux
Возможно, я ошибаюсь, согласно цитате из приведенного ниже ответа. но я думаю, вы должны просто использовать его как число, не расшифровывать. –