七度&光 2015-08-23 02:25 采纳率: 22.2%
浏览 15

Laravel 4.2输入文件为空

I have form for upload multiple image file combine with Laravel 4.2 and Ajax. But when uploaded image, input file always NULL. How can i fix it ?

This my Upload Form.

{{ Form::open(array('url' => route('member.font.upload.images'), 'files'=>true, 'id'=>'upload-images', 'method'=> 'post')) }}
    {{ Form::file('image[]', array('multiple'=>true, 'id'=>'images')) }}
    <input type="hidden" name="font" value="{{ $font->id }}">
{{ Form::close() }}

And Upload Process in Controller.

public function uploadImages()
{
$rules = array(
    'font' => 'required'
);

$validator = Validator::make(Input::all(), $rules);

if ($validator->fails()) {
    return Response::json(['success' => false, 'message' => 'Failed upload image']);
} else {
    if(Input::hasFile('image')){
        $images = Input::file('image');
        foreach($images as $image) {
            $imagename = time() . $image->getClientOriginalName();
            $upload =  $image->move('images/', $imagename);

            if($upload){
                $data = new Image;
                $data->font_id      = Input::get('font');
                $data->name         = $imagename;
                $data->save();
            }
        }
        return Response::json(['success' => true, 'message' => 'Success']);
    }else{
        return Response::json(['success' => false, 'message' => 'File not found']);
    }
}
}

And then Ajax process.

$('#images').change(function(e) {
e.preventDefault();
$.ajax({
    url: $('#upload-images').attr('action'),
    type: 'post',
    dataType: 'json',
    data: $('#upload-images').serialize(),
    beforeSubmit: function() {
        $('.add-images').removeClass('enabled').addClass('uploading');
    },
    success: function(data) {
        $('.add-images').removeClass('uploading').addClass('enabled');
    },
    error: function() {}
    });
});
  • 写回答

2条回答 默认 最新

  • ℙℕℤℝ 2015-08-23 02:38
    关注

    Change this section:

    {{ Form::open(array('url' => route('member.font.upload.images'), 'files'=>true, 'id'=>'upload-images', 'method'=> 'post')) }}
    

    To:

    {{ Form::open(array('route' => 'member.font.upload.images', 'files'=>true, 'id'=>'upload-images', 'method'=> 'post')) }}
    
    评论

报告相同问题?

悬赏问题

  • ¥15 ogg dd trandata 报错
  • ¥15 高缺失率数据如何选择填充方式
  • ¥50 potsgresql15备份问题
  • ¥15 Mac系统vs code使用phpstudy如何配置debug来调试php
  • ¥15 目前主流的音乐软件,像网易云音乐,QQ音乐他们的前端和后台部分是用的什么技术实现的?求解!
  • ¥60 pb数据库修改与连接
  • ¥15 spss统计中二分类变量和有序变量的相关性分析可以用kendall相关分析吗?
  • ¥15 拟通过pc下指令到安卓系统,如果追求响应速度,尽可能无延迟,是不是用安卓模拟器会优于实体的安卓手机?如果是,可以快多少毫秒?
  • ¥20 神经网络Sequential name=sequential, built=False
  • ¥16 Qphython 用xlrd读取excel报错