plnkr.co/edit/1BDkl8D5gzo50LQE1iI6?p=preview

у отправить несколько данных изображения со значением текстового поля на серверную сторону (PHP). Я сделал несколько загрузок изображения, но я не могу отправить свои данные на серверную сторону при отправке form.my код просмотра ниже

<form ng-submit="save()"><input type="file" file-upload multiple>
<div ng-repeat="step in files">
    <img ng-src="{{step}}" />{{step.name}}
    <input type="text" ng-model="comments">
</div>
<input type="submit"></form>

в моем контроллере

app.directive('fileUpload', function() {
  return {
    scope: true, //create a new scope
    link: function(scope, el, attrs) {
      el.bind('change', function(event) {
        var files = event.target.files;
        //iterate files since 'multiple' may be specified on the element
        for (var i = 0; i < files.length; i++) {
          //emit event upward
          scope.$emit("fileSelected", {
            file: files[i]
          });
        }
      });
    }
  };
});

app.controller('mainCtrl', function($scope) {
  $scope.files = [];
  $scope.$on("fileSelected", function(event, args) {
    var item = args;
    $scope.files.push(item);
    var reader = new FileReader();

    reader.addEventListener("load", function() {
      $scope.$apply(function() {
        item.src = reader.result;
      });
    }, false);

    if (item.file) {
      reader.readAsDataURL(item.file);
    }
  });
});

Когда я нажимаю кнопку «Отправить», я хочу отправить имя изображения с соответствующими комментариями для изображения. Как я могу отправить данные через API для php.В моем коде функции save () см. ниже

$scope.save = function()
{
console.log($scope.files)console.log($scope.comments)
}

Ответы на вопрос(1)

вам нужно использовать$http сервис для отправки изображений на сервер

$scope.save = function() {
    var fd = new FormData();
    fd.append('file', $scope.files);
    $http.post('uploadUrl', fd, {
            transformRequest: angular.identity,
            headers: {
                'Content-Type': undefined
            }
        })
        .then(function(response) {})
        .catch(function(response) {});
}
 user709842716 сент. 2017 г., 16:12
не могли бы вы сделать планкр для этого
 user709842716 сент. 2017 г., 16:07
я хочу отправить значение текстового поля с изображением
 Sachila Ranawaka16 сент. 2017 г., 16:10
измените переменную ng-model на свойство объекта файла. любить<input type="text" ng-model="step .comments"> Это свяжет комментарий к объектам массива файлов
 user709842716 сент. 2017 г., 16:11
если я добавлю console.log ($ scope.files) после этого fd.append ('file', $ scope.files); не может получить любое имя изображения
 Sachila Ranawaka16 сент. 2017 г., 16:19

Ваш ответ на вопрос