Отправка данных

Последнее обновление: 27.04.2017

Отправка данных может производиться различными методами, но в данном случае мы рассмотрим отправку данных методом post().

Пусть у нас определена следующая страница:

<!doctype html>
<html ng-app="questApp">
<meta charset="utf-8" />
<head>
<div ng-controller="AnswerController">
<form name="answerForm">
<fieldset>
<p><label for="answerText">Текст ответа</label>
<input id="answerText" ng-model="answer.text" required placeholder="Введите ответ" /></p>
<p><label for="answerAuthor">Автор ответа</label>
<input id="answerAuthor" ng-model="answer.author" required placeholder="Введите автора" /></p>
</fieldset>
<p><button type="submit" ng-click="save(answer, answerForm)">Сохранить</button></p>
</form>
<div>Ответ:</div>
<p ng-bind="response.text"></p>
<p ng-bind="response.author"></p>
</div>
<script src="js/lib/angular.min.js"></script>
<script src="js/app.js"></script>
<script src="js/controllers/AnswerController.js"></script>
</body>
</html>

Кроме формы ввода я еще определил поля, которые привязываются к ответу с сервера.

Контроллер в файле AnswerController.js тогда у нас будет выглядеть следующим образом:

questApp.controller('AnswerController',
    function AnswerController($scope, $http){
		
		$scope.response={};
        $scope.save = function (answer, answerForm){
            if(answerForm.$valid){
                
				$http.post("postAnswer.php", answer).then(function success (response) {
					$scope.response=response.data;
					
				});
            }
        };
    }
)

Метод $http.post() отправляет объект answer по адресу postAnswer.php

При удачной обработке ответа метод success(function (answ) отправленный сервером объект answ и устанавливает его в качестве значения $scope.response

Скрипт postAnswer.php будет просто получать объект в json формате и его же отправлять в том же формате:

<?php
$answer = json_decode(file_get_contents('php://input'), true);

if(isset($answer['author']) && isset($answer['text']))
{
	
    echo json_encode($answer);
}
else
{  
    echo "Введенные данные некорректны";
}
?>
Оправка в AngularJS
Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850