Symfony2和blueimpjquery文件上传:在哪里设置;服务器/php“;目录

Symfony2和blueimpjquery文件上传:在哪里设置;服务器/php“;目录,php,jquery,file-upload,symfony,blueimp,Php,Jquery,File Upload,Symfony,Blueimp,我将使用库的基本版本进行文件上载。 在PHP框架中,此Javascript库依赖于PHP类“index.PHP”的执行,该类位于“server/PHP”目录中。如中所示,“操作”必须指向该目录 在Symfony2应用程序中使用此库时,应该将“server/php”目录放在哪里我应该使用哪条路径? 在实践中,如何让它发挥作用 PS:我知道有一些Symfony2包,比如Punkave的“Symfony2文件上传包”,但在教程中我缺少了一些东西,我不想重复使用Symfony2表单-我会将jquery插

我将使用库的基本版本进行文件上载。 在PHP框架中,此Javascript库依赖于PHP类“index.PHP”的执行,该类位于“server/PHP”目录中。如中所示,“操作”必须指向该目录

Symfony2应用程序中使用此库时,应该将“server/php”目录放在哪里我应该使用哪条路径? 在实践中,如何让它发挥作用


PS:我知道有一些Symfony2包,比如Punkave的“Symfony2文件上传包”,但在教程中我缺少了一些东西,我不想重复使用Symfony2表单-

我会将jquery插件内容放入
web/bundles//js jquery文件上传
。然后我将配置脚本(检查配置)以查找index.php文件:
/bundles//js/jquery file upload/server/php/index.php

当然,您必须修改index.php文件,以检查用户是否已登录以及是否具有正确的权限

例如,我在测试环境中就是这样做的:

我将此操作添加到控制器:

/**
 * @Route("/test/jquery-file-upload")
 * @Template("<your bundle name>:Default:test-jquery-file-upload.html.twig")
 */
public function testJqueryFileUploadAction()
{
    return array();
}
/**
*@Route(“/test/jquery文件上传”)
*@Template(“:默认值:testjquery文件upload.html.twig”)
*/
公共函数testJqueryFileUploadAction()
{
返回数组();
}
我创建了这个模板:

<input id="fileupload" type="file" name="files[]" data-url="{{ asset('bundles/<your bundle name>/jquery-file-upload/server/php/index.php') }}" multiple>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<script src="{{ asset('bundles/<your bundle name>/jquery-file-upload/js/vendor/jquery.ui.widget.js') }}"></script>
<script src="{{ asset('bundles/<your bundle name>/jquery-file-upload/js/jquery.iframe-transport.js') }}"></script>
<script src="{{ asset('bundles/<your bundle name>/jquery-file-upload/js/jquery.fileupload.js') }}"></script>
<script>
$(function () {
    $('#fileupload').fileupload({
        dataType: 'json',
        done: function (e, data) {
            $.each(data.result, function (index, file) {
                $('<p/>').text(file.name).appendTo(document.body);
            });
        }
    });
});
</script>

$(函数(){
$('#fileupload')。fileupload({
数据类型:“json”,
完成:功能(e,数据){
$.each(data.result、函数(索引、文件){
$('

').text(file.name).appendTo(document.body); }); } }); });


您说过“我会将脚本配置为在以下位置查找index.php文件:web/bundles//js/jquery file upload/server/php/index.php。”。但是,js库中没有对path server/php的引用。不是吗?我编辑了答案,因为路径在我编写时没有呈现,并添加了一个指向插件选项文档的链接。您可以通过jquery插件的url选项设置index.php文件的路径。另一种可能的方法是创建一个使用此插件的Symfony 2字段类,以便您可以轻松地以任何形式使用它。但我从你的问题中了解到,你不想这样做。你是否尝试过你提出的解决方案?我想我应该配置的脚本是网页中的Javascript代码(在我的例子中是一个小树枝模板)。正如您所建议的,它应该指向index.php类,并且一切都应该正常工作。然而,事实并非如此!我还认为检查用户是否登录不是一项要求(除了安全考虑)。它工作得很好。它也适用于你的第一个答案。简单地说,它在我的页面中不起作用,它在一个新项目中起作用。可能我的一些Javascript库与Blueimp有冲突)。非常感谢你的回答。