首先使用Dropzone.js前端组件
{{ HTML::style('css/basic.css');}} {{ HTML::script('js/dropzone.js') }}
form部分只需要
<form action="{{ url('user/upload')}}" class="dropzone" id="my-awesome-dropzone"> <input name="file" type="file" multiple="" /> </form>
laravel部分
public function post_upload(){ $input = Input::all(); $rules = array( 'file' => 'image|max:3000', ); $validation = Validator::make($input, $rules); if ($validation->fails()) { return Response::make($validation->errors()->first(), 400); } $file = Input::file('file'); $extension = File::extension($file['name']); $directory = path('public').'uploads/'.sha1(time()); $filename = sha1(time().time()).".{$extension}"; $upload_success = Input::upload('file', $directory, $filename); if( $upload_success ) { return Response::json('success', 200); } else { return Response::json('error', 400); } }
完成~~
参考自http://maxoffsky.com/code-blog/howto-ajax-multiple-file-upload-in-laravel/