Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 移动使用Dropzone.js和PHP上传的照片_Javascript_Php_File_Upload_Dropzone.js - Fatal编程技术网

Javascript 移动使用Dropzone.js和PHP上传的照片

Javascript 移动使用Dropzone.js和PHP上传的照片,javascript,php,file,upload,dropzone.js,Javascript,Php,File,Upload,Dropzone.js,我正在尝试使用添加一个简单的拖放界面,用户可以将多达10张照片上传到我的服务器(目前为WAMP)。我在后端使用PHP5.4 接下来,我让系统工作得足够好,可以将可接受的文件类型上传到根目录中的“Uploads”文件夹中,但我一直在研究如何让照片上传到每个用户的唯一目录中 当用户进入我的照片上传页面时,他们已经在我的服务器上创建了一个具有唯一名称的文件夹,该文件夹的路径已存储在$\u会话['requestedDirectory']中 以下是用于显示Dropzone表单的代码: <form a

我正在尝试使用添加一个简单的拖放界面,用户可以将多达10张照片上传到我的服务器(目前为WAMP)。我在后端使用PHP5.4

接下来,我让系统工作得足够好,可以将可接受的文件类型上传到根目录中的“Uploads”文件夹中,但我一直在研究如何让照片上传到每个用户的唯一目录中

当用户进入我的照片上传页面时,他们已经在我的服务器上创建了一个具有唯一名称的文件夹,该文件夹的路径已存储在$\u会话['requestedDirectory']中

以下是用于显示Dropzone表单的代码:

<form action="<?php echo BASE_URL; ?>photo_uploads.php" class="dropzone" id="photoUploadDropzone"></form>

<script type="text/javascript">
    Dropzone.options.photoUploadDropzone = {
      paramName: "file",
      maxFilesize: 5, // MB
      maxFiles: 10,
      addRemoveLinks: true,
      acceptedFiles: "image/jpeg, image/jpg, image/png, image/gif",
      accept: function(file, done) {
        done();
      }
    };
</script>

完全不知道为什么该值不能直接从会话中获得-我从来没有听说过会话值超出范围-但很高兴解决了这个问题。

您可以将requestedDirectory作为带有表单action属性的查询字符串传递。这样就可以访问它

if (!empty($_FILES)) {
  $tempFile = $_FILES['file']['tmp_name'];
  $targetPath = $_SESSION['requestedDirectory']; <--HERE'S THE PROBLEM LINE
  $targetFile =  $targetPath. $_FILES['file']['name'];
  move_uploaded_file($tempFile,$targetFile);
}
<form action="<?php echo BASE_URL; ?>photo_uploads.php?folder=<?php echo $_SESSION['photosDir']; ?>" class="dropzone" id="photoUploadDropzone"></form>
$targetPath = $_GET['folder'];