drupal-7 - 如何在 Drupal 中处理通过 Dropzone 上传的文件?

标签 drupal-7 dropzone.js

最近我一直在尝试在 Drupal 中处理通过 Dropzone.js 上传的文件。我没有使用 Drupal API 表单内容,只是使用纯 HTML 代码来生成 Dropzone,但我想使用 Drupal 函数(特别是 file_save_upload())处理上传的文件。但是,我无法使用该功能“捕获”上传的文件。

最佳答案

由于某些原因,Dropzone 生成的 $_FILES 数组看起来像这样:

Array   (
    [files] => Array
        (
            [name] => 5bcb9c.jpg
            [type] => image/jpeg
            [tmp_name] => /private/var/tmp/phpgZHmT8
            [error] => 0
            [size] => 273794
        )   )

但是,Drupal 的函数 file_save_upload() 正在等待此结构中的 $_FILES 数组:

Array
(
    [files] => Array
        (
            [name] => Array
                (
                    [files] => 5bcb9c.jpg
                )

            [type] => Array
                (
                    [files] => image/jpeg
                )

            [tmp_name] => Array
                (
                    [files] => /private/var/tmp/php4ebqBs
                )

            [error] => Array
                (
                    [files] => 0
                )

            [size] => Array
                (
                    [files] => 210075
                )

        )

)

所以我必须做的是更改 $_FILES 变量(是的,我知道!),以便它匹配 Drupal 所需的结构。它现在可以工作了,尽管我不太明白为什么 Dropzone 会生成另一个结构,而 Drupal 需要 $_FILES 变量的其他结构。如果有人能详细说明这一点,我会很高兴。不过,我的解决方案有效。

关于drupal-7 - 如何在 Drupal 中处理通过 Dropzone 上传的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28037779/

相关文章:

python - 使用 flask-dropzone 上传文件返回 'Server error: 0'

asp.net-core - Asp.Net Core - 无法从 Dropzone JS 上传文件

drupal - 有人检查过 Drupal 7 吗?

Drupal 7如何覆盖特定内容类型的page.tpl?

drupal-7 - 如何在 Drupal 7 上呈现自定义字段分类法?

drupal - 在 Drupal 网站上同步 2 个 youtube 视频

javascript - 修改 Dropzone : Show uploaded image in another div

javascript - Laravel 和 Dropzone.js 文件请求

php - Bootstrap 3 Datetimepicker 在第二次点击时触发

javascript - 如何使用 Dropzone.js 禁用可点击的表单?