Javascript Dropzone.js-我可以';我不能上传我的图片
我制作了一个工作正常的控制器:Javascript Dropzone.js-我可以';我不能上传我的图片,javascript,jquery,laravel,dropzone,Javascript,Jquery,Laravel,Dropzone,我制作了一个工作正常的控制器: public function gallerystore(Request $request){ $gallery_path = 'uploads'; $files = $request->file('gallery'); foreach ($files as $gallery) { $gallery_new_name = time().$gallery->getClientOriginalName();
public function gallerystore(Request $request){
$gallery_path = 'uploads';
$files = $request->file('gallery');
foreach ($files as $gallery) {
$gallery_new_name = time().$gallery->getClientOriginalName();
$gallery->move($gallery_path, $gallery_new_name);
$img = Image::make(public_path($gallery_path . '/' .$gallery_new_name));
$img->resize(null, 720, function($constraint){
$constraint->aspectRatio();
});
}
}
问题是当我尝试使用Dropzone.js
时。实际上,当我在表单中添加类dropzone时。拉雷维尔告诉我错误
为foreach()提供的参数无效
我认为添加HTML代码将有助于进一步调试该问题。但是,发生错误的原因似乎是您试图获取的
gallery
参数为null,因此foreach
方法无法迭代该值
我认为此参数为null的原因是,提交的表单缺少上传工作所需的
enctype=“multipart/form data”
。在不使用插件的情况下,检查是否设置了此属性。I不;我没有显示我的标记,但我有enctype=“multipart/form data”。但在文档中,我看到这个librari的配置看起来像ajax。你必须给出url等等。所以它是异步工作的。但对我来说,这不是一个好办法。@theexpanse87是的,出于安全原因,没有js可以修改文件输入中的内容。如果您仍然希望使用Dropzone执行非ajax请求,则需要序列化文件或采用等效方法,即