Dropzone无法将文件上传到本地文件夹

时间:2019-03-24 14:01:28

标签: php html dropzone

我正在尝试使用Dropzone将图像上传到本地文件夹。但是,图像未加载(移动)到本地文件夹。这是拖放版本。

只需遵循教程中的代码即可。 我正在使用XAMPP,Windows 10和Chrome。 php.ini设置为上传文件。

表格:

class UserCreateAction extends BaseAction
{
    private $userService;

    public function __construct(UserService $userService)
    {
        $this->userService = $userService;
    }

    public function __invoke(User $user)
    {
        return $this->userService->create($user);
    }
}

初始化代码:

<!--dropzone form -->
<form action="uploads.php" class="dropzone" id="avatar-dropzone">
     <div class="fallback">
      <input name="file" type="file" />
     </div>
</form>

该文件应该显示在名为“ uploads”的本地文件夹中,但此处没有文件。

我包括一个目录结构的图像,其中标记了相关的文件夹/文件:

directory structure

uploads.php代码:

  <script>

    $(document).ready(function() {
        Dropzone.autoDiscover = false;
        var myDropzone = new Dropzone("#avatar-dropzone");
    });

  </script>

表单和初始化代码在views / users.php页面中。 项目文件夹中的上载文件夹 uploads.php位于admin文件夹中 js / css链接位于config / js和config / css

我可以拖动图像,但是没有其他反应。

2 个答案:

答案 0 :(得分:0)

您只需要调试php代码。我将做一些修改:

    ...
    $storeFolder = dirname( __DIR__ ).'/uploads/'; 

    if (!empty($_FILES)) {

        $tempFile = $_FILES['file']['tmp_name'];             

        //$targetPath =  $storeFolder; // <-- we don't need this line anymore

        $targetFile =  $storeFolder . $_FILES['file']['name'];

        die($targetFile); // <-- just debug if your filename is correct and if you ever reach this point.
   ...

要检查的另一件事是对$storeFolder的权限。

答案 1 :(得分:0)

尝试了上面的代码并发现它不起作用后,我查看了文件夹以确保链接到正确的文件夹。那时我发现我给文件命名错误。而不是uploads.php我有uploads.php。我纠正了这个问题,现在可以了。将保留两个版本的uploads.php代码以供参考。

感谢alex的帮助。