Javascript 使用dropzone laravel通过电子邮件发送多张图像

Javascript 使用dropzone laravel通过电子邮件发送多张图像,javascript,php,ajax,laravel,dropzone.js,Javascript,Php,Ajax,Laravel,Dropzone.js,我想上传多个图像文件,并通过电子邮件发送给客户。但是当uploadMultiple:true,添加到dropzone时,ajax请求调用数组上的成员函数getclientoriginalname()时会出现此错误。在没有该选项的情况下上载多个图像。不管怎样,我想通过电子邮件发送多个文件,我该怎么做 dropzone js代码: Dropzone.options.uploadimg={ paramName:“file”,//将用于传输文件的名称 最大文件大小:5,//MB 接受的文件:“.jpe

我想上传多个图像文件,并通过电子邮件发送给客户。但是当
uploadMultiple:true,
添加到dropzone时,ajax请求调用数组上的成员函数getclientoriginalname()时会出现此错误。在没有该选项的情况下上载多个图像。不管怎样,我想通过电子邮件发送多个文件,我该怎么做

dropzone js代码:

Dropzone.options.uploadimg={
paramName:“file”,//将用于传输文件的名称
最大文件大小:5,//MB
接受的文件:“.jpeg、.jpg、.png”,
uploadMultiple:true,
addRemoveLinks:是的,
成功:函数(文件、响应)
{
美元。通知({
消息:“图像已成功上载!”
},
{
类型:“成功”
});
},
错误:函数(文件、响应)
{
返回false;
console.log(“上传失败”);
},
标题:{
'X-CSRF-TOKEN':$('meta[name=“CSRF-TOKEN”]).attr('content'))
}

}
由于它有多个文件,因此需要循环使用file变量来获取文件

class ImageUploadController extends Controller
{
    public function uploadImage(Request $request){

        $img_files = $request->file('file');
        foreach($img_files as $img_file){
            $imgName = $img_file->getClientOriginalName();

            Cookie::queue(cookie('imgName', $imgName, $minute = 5));

            $img_file->move(public_path('uploads'), $imgName);
        }
    }
}

错误信息非常清楚。只需执行
var\u dump($img\u文件)
并检查它实际上包含什么?(提示,如果您允许多次上传,它们将作为一个文件数组发送)它只获得第一个上传的图像,有什么问题吗?foreach正在工作,我想您的问题在于cookie逻辑,我不知道它背后的原因,它似乎通过用相同的名称替换图像来覆盖图像啊。。谢谢,这很有效。当我试着用过期的饼干时。现在上传的图像只需一个请求,比如“截图(384).pngScreenshot(390.png)”,我如何才能在电子邮件控制器中获得每个图像?但该输出将与print_r()一起提供。dd()只显示一个图像名称,为什么会出现这种情况?您应该使用类似URL的内容: