Laravel Ajax上传多个图片

时间:2017-08-14 12:32:53

标签: jquery laravel

我的表格包含:id,type_id,title,img_1,img_2,img_3,img_4,img_5和is_enabled。我试图将Doa中的数据推送到我的控制器中,以便将其输入到数据库中,但它会返回此错误:jquery-3.1.1.min.js:4 Uncaught(in promise)RangeError:Maximum调用堆栈大小超过

这是我的ajax:

$(document).delegate("#saveDoaData","click", function (e) {
    e.preventDefault();
    var iu=[]
    var Doa = [];
    var images = [];
    var images = $('#FormDoa').find('.Uploads');
    for(i=0;i<images.length;i++){
        var img = $("#FormDoa").find('#Uploads'+[i]);
        var file_data = $(images[i]).prop("files")[0];
        var form_data = new FormData();
        form_data.append("file", file_data)
        form_data.append("nm", '')
        form_data.append("dir", 'doa')
        form_data.append("w", 800)
        form_data.append("h", 600)
        Doa.push({'Bebas': img})
        $.ajax({
                url: "{{route('content-upload') }}",
                cache: false,
                contentType: false,
                processData: false,
                data: form_data,
                type: 'post',
                success: function(p){
                    if (!p.p1) 
                       {
                           iu.push(p.p1)
                       }
                    }
                })
            }
            swal({
                title: 'Are you sure?',
                type: 'question',
                showCancelButton: true,
                confirmButtonText: 'Yes, save it!'
            }).then(function() {

                var data = {
                    a: $("input[name='save_type").val(),
                    id: $("input[name='id").val(),
                    title: $("input[name='title").val(),
                    is_enabled: $("input[name='is_enabled").val(),
                    doa_type: $('#doa_type').find(":selected").val(),
                    img: Doa,
                };

                $.post("{{route('post-doa') }}", data, function (r) {
                    swal(
                        'Success',
                        '',
                        'success'
                    ).then(function () {

                        $('#rp').empty().slideReveal("hide")
                        GetListDoa()
                    })
                }, 'json');
            })
        });

这是我的控制者:

public function PostDoa()
{
    if(Input::get('a') == 'SaveDoa'){
        DB::table('db_ibadah_v2.content_prayer')->insert([
            'title' => Input::get('title'),
            'type_id' => Input::get('doa_type'),
            'img_1' => Input::get('img'),
            'img_2' => Input::get('img'),
            'img_3' => Input::get('img'),
            'img_4' => Input::get('img'),
            'img_5' => Input::get('img'),
            'is_enabled' => Input::get('is_enabled'),
        ]);
        return json_encode(Input::all());
    }else{
        DB::table('db_ibadah_v2.content_prayer')->where('id', Input::get('id'))->update([
            'title' => Input::get('title'),
            'type_id' => Input::get('doa_type'),
            'img_1' => Input::get('img[0]'),
            'img_2' => Input::get('img[1]'),
            'img_3' => Input::get('img[2]'),
            'img_4' => Input::get('img[3]'),
            'img_5' => Input::get('img[4]'),
            'is_enabled' => Input::get('is_enabled'),
        ]);
        return json_encode(Input::all());
    }
}

我是jQuery,javascript和laravel的新手。感谢您的帮助。

0 个答案:

没有答案