无需使用表单即可在symfony 4中上传多个文件

时间:2019-03-18 15:32:31

标签: php html input upload symfony4

我在不使用buildForm和实体的情况下如何在symfony 4中上传多个文件时遇到问题。

我的Jquery&HTML代码是

此功能用于添加类型文件的新输入

$(".forNewPic").click(function(){
        $('.beforeHere').before('<div id="PC-imagePreview'+$(".forNewPic").attr("nbr")+'"  class="col-lg-4"><div class="avatar-upload"><div class="avatar-edit"><input type="file" name="images[]" id="imageUpload'+$(".forNewPic").attr("nbr")+'" ImgToChange="imagePreview'+$(".forNewPic").attr("nbr")+'" class="imageUpload" accept=".png, .jpg, .jpeg" /><label for="imageUpload'+$(".forNewPic").attr("nbr")+'"><i class="spanAddPhoto fas fa-pen"></i></label><span class="ForDelete"><i DivToDelIs="PC-imagePreview'+$(".forNewPic").attr("nbr")+'" class="spanDelPhoto fas fa-trash-alt"></i></span></div><div class="avatar-preview"><div id="imagePreview'+$(".forNewPic").attr("nbr")+'" style="background-image: url({{ asset("images/AddImgProd.png") }});"></div></div></div></div>');

        $("#imageUpload"+$(".forNewPic").attr("nbr")).change(function() {
            readURL(this, $(this).attr("ImgToChange"));
        });
        $(".ForDelete").click( function() {
            $('#'+($(this).children().attr('DivToDelIs'))).remove();
        })
        $(".forNewPic").attr("nbr", parseInt($(".forNewPic").attr("nbr"))+1);
    })

当我在添加按钮中单击那些生成的输入时, 现在工作,我有这些输入,我想按用户获取上传的文件 在我的控制器中。

<input type='file' name="images[]" id="imageUpload0" ImgToChange="imagePreview0" class="imageUpload" accept=".png, .jpg, .jpeg" />

<input type='file' name="images[]" id="imageUpload1" ImgToChange="imagePreview1" class="imageUpload" accept=".png, .jpg, .jpeg" />

<input type='file' name="images[]" id="imageUpload2" ImgToChange="imagePreview2" class="imageUpload" accept=".png, .jpg, .jpeg" />  

<input type='file' name="images[]" id="imageUpload3" ImgToChange="imagePreview3" class="imageUpload" accept=".png, .jpg, .jpeg" />

现在我想在控制器中获取此输入 我使用了请求,但这对我不起作用

$images = $request->request->get("images");

如果有任何想法,请帮我解决这个问题,因为我已经研究并尝试了很多示例,但没有人为我工作。 谢谢提前;)

0 个答案:

没有答案