2016-06-17 2 views
1

私はusaualとしてすべてをやっていますが、何か変わってしまいました。POSTリクエストでアップロードされたファイルデータにアクセスできない

私はファイルアップロード用にdropzone.jsプラグインを使用していますが、コントローラにはファイルデータを実際に見ることができませんが、このファイルを保存するコントローラがあります。

事前条件を満たす必要: php.iniのはOK POSTが(XAMP)

これは私が(まだ動作していない)

フロントエンドになってしまった最小限の例があり、ローカルホスト上で稼働OK をrequestisです

@extends('layouts.app') 
@section('content')  
    <!-- Change /upload-target to your upload address --> 
    <form action="{{url('attachment')}}" class="dropzone"></form> 
@endsection 
@section('scripts') 
    <script src="https://rawgit.com/enyo/dropzone/master/dist/dropzone.js"></script> 
    <link rel="stylesheet" href="https://rawgit.com/enyo/dropzone/master/dist/dropzone.css"> 
@endsection 

ROUTE

Route::group(['middleware' => 'auth'], function() { 
    Route::post('attachment','[email protected]'); 
}); 

コントローラ

class AttachmentController extends Controller 
{ 
    public function Save() 
    { 
     var_dump(Input::get()); 
    } 
} 

POSTリクエスト

-----------------------------18028969725576 
Content-Disposition: form-data; name="file"; filename="3.jpg" 
Content-Type: image/jpeg 

ÿØÿá�Exif��II*������������ÿì�Ducky�����(��ÿámhttp://ns.adobe.com/xap/1.0/�<?xpacket begin="" 
[...] 

応答

array(0) { 
} 
+1

exportsフォルダを作成することを確認しますが、 '($ _ FILES)'のvar_dumpを試みたことがありますか?アップロードされたファイルに関する情報は、 '$ _FILES'スーパーグローバル変数で利用できます。 – keupsonite

+0

はい、私はInput :: file()や$ _POSTのようなphpやlaravelのようなものに疲れました。それでも多くの方に感謝しています。 :) – Lixi

+1

'Input :: get'の代わりに' Input :: file'や 'Request :: file'を使う必要はありませんか?また、formタグに 'enctype = 'multipart/form-data''を追加してみてください(dropzoneがこれを受け取るかどうかは分かりませんが、通常のアップロードにはiircが必要です)。 – Pevara

答えて

0

利用$request->file('file')の代わりInput::get()。たとえば、以下のスニペットを使用してサーバーのパスstorage/exportsに保存してみてください。

はあなたのストレージフォルダ

class AttachmentController extends Controller 
{ 
    public function Save(Request $request) 
    { 
       $request->file('file')->move(
        storage_path('exports'), 'uploadedFile.jpg' 
       ); 

    } 
} 
関連する問題