Обратите внимание, что я не эксперт по PHP, но несколько дней назад я провел некоторое тестирование, связанное с другим AngularJS post request, который очень похож на этот. Итак, мое решение здесь основано на моем опыте, связанном с этим предыдущим опытом публикации данных PHP. Также здесь использовалось руководство по php для $_SESSION.
Прежде всего, я бы поместил ваш php-код в файл getLoggedInUser.php, как показано ниже:
<?php
if ($_SERVER["REQUEST_METHOD"] === "POST")
{
echo $_SESSION["User"];
}
?>
а затем внесите некоторые изменения в UserController.
//added $scope in the controller's function parameters, just in case
userModule.controller('UserController', [ '$http', function($scope, $http)
{
var userCtrl = this;
this.user = {};
//let’s pass empty data object
var dataObj = {};
$http.post('User/getLoggedInUser.php', dataObj).
success(function (data, status, headers, config)
{
console.log("success");
userCtrl.user = data;
//if the above doesn’t work, try something like below
// $scope.userCtrl.user = data;
})
.error(function (data, status, headers, config)
{
console.log("error");
});
}]);
Я надеюсь, что это поможет с проблемой.
Некоторые примечания: AngularJS для меня совершенно новый, и если у кого-то другое мнение о том, как должен быть сделан этот почтовый вызов, то не стесняйтесь комментировать это решение :-) Кстати, я просмотрел некоторые другие решения проблемы публикации php (без AngularJS) как этот, и я до сих пор не уверен, как лучше всего решить эту проблему с публикацией.
person
jyrkim
schedule
13.02.2015