2
私はこのフォームをlaravelのブレードファイルに入れました。formDataをangleからlaravle 5.3に渡すにはどうすればconatinファイルをアップロードするのですか?
<form class="form-horizontal" ng-submit="onSubmit()" method="POST" id='products'enctype="multipart/form-data" novalidate="novalidate">
<input type="hidden" name="_token" value="IPcUrZpuTnJQE22gFYCuD9bWMz5q90eCVvrlmtY4">
<div class="form-group" ng-class="">
<label class="col-md-2 control-label ">Product Name</label>
<div class="col-md-10">
<input class="form-control"
name="prod_name"
size =""
ng-model='myMoudle.prod_name'
maxlength=""
type="text"
required="required"
value="">
</div>
</div>
<div class="form-group" ng-class="">
<label class="col-md-2 control-label ">Picture</label>
<div class="col-md-10">
<input class="form-control "
name="prod_pic"
ng-model='myMoudle.prod_pic'
type="file"
file-input="files"
value="">
</div>
</div>
<div class="form-group" ng-class="">
<label class="col-md-2 control-label ">Price</label>
<div class="col-md-10">
<input class="form-control "
name="prod_price"
ng-model='myMoudle.prod_price'
type="number"
value="">
</div>
</div>
<button type="submit" class="btn btn-info btn-sm pull-left"><i class="fa fa-plus"></i></button>
</form>
私のJSコード:
app = angular.module('myMoudle', []);
app.controller('myController', function ($scope, $http) {
$scope.names = [];
$scope.onSubmit = function() {
var fd = new FormData();
$http({
method: 'POST',
url: 'CreateProducts',
headers: {
"Content-Type": undefined
},
data: fd
})
.success(function (response) {
$scope.names = response;
})
.error(function (response) {
console.log(response);
});
}
});
と私のPHPのコントローラ機能は、次のようになります。
public function postCreateProducts(Request $request) {
print_R($_FILES) ;
echo $request->input('prod_name');
$posts = Input::all();
print_R($posts) ;
}
すべてのことが示されているは、Array()は、Array()です。そして私がフォームで送るものではありません。 私はいくつかの助けを得ることを非常にうれしく思うでしょう。
CreatePhotoAPIRequest何であるかを、このようなあなたのビューの代わりにそれを
を? – oded
リクエストと同じですが、他の場所で定義されています。このコードを変更する時間はありません。おそらく後で – cssBlaster21895
が機能しません。私は入力テキスト値を取得しますが、ファイルは取得しません。 – oded