上传多张图片并插入问题

时间:2019-10-09 16:30:41

标签: php mysql laravel image

我想针对lastInsertID上传并保存多张图片。当所有行图像字段都已设置或全部未设置时(默认值为null),其工作。但是,当我要设置图像1行和其他将为空白。这次只有设置的图像字段是上载和保存,而另一个不是。

存储功能代码:

    $history = new History();
    $history->user_id = Auth::user()->id;
    $history->patient_id = $request->patient_id;
    $history->description = $request->description;
    $history->remark = $request->remark;
    $history->save();
    $history_id = DB::getPdo()->lastInsertId();
    $image = $request->file('image');
    if(isset($image)){
        foreach ($image as $key => $img) {
            $imagename = $history_id.'-'.uniqid().'.'.$img->getClientOriginalExtension();
            if(!file_exists('images/report')){
                mkdir('images/report', 777, true);
            }            
            $img->move('images/report',$imagename);

            $report = new Report();
            $report->history_id = $history_id;
            $report->test_id = $request->test_id [$key];
            $report->result = $request->result [$key];
            $report->image = $imagename;
            $report->save();
        }
    }else{
        foreach ($request->test_id as $key => $value) {
            $report = new Report();
            $report->history_id = $history_id;
            $report->test_id = $request->test_id [$key];
            $report->result = $request->result [$key];
            $report->image = '';
            $report->save();
        }
    }

When blank two field its work

When set two field its inserted

When one set and one blank then only set image set filed is inserted others are not

0 个答案:

没有答案