繁体   English   中英

Dropzone js和Verot的上传,如何上传到动态文件夹?

[英]Dropzone js and Verot's upload, how to upload to dynamic folder?

我正在使用Dropzone.js和Verot的class.upload.php创建一个简单的上传文件。 我想将图像从$ _GET []变量动态上传到文件夹。

下面是我的代码,但是无论我做什么,所有文件都会上传到“ uploads”文件夹中。

upload.php

<?php include('includes/php/class.upload.php');  ?>

<form action="upload.php" class="dropzone"></form>

<?php

$ds = DIRECTORY_SEPARATOR;
$filesFolder = 'uploads';

if(isset($_GET['album'])){
$targetDir = dirname(__FILE__).$ds.$filesFolder.$ds.$_GET['album'];
}else{
$targetDir = dirname(__FILE__).$ds.$filesFolder;
}

if(!empty($_FILES)){

$handle = new upload($_FILES['file']);

if ($handle->uploaded) {
    $handle->image_resize         = true;
    $handle->image_x              = 960;
    $handle->image_ratio_y        = true;
    $handle->process($targetDir);
}
}



?>`

因此,如果url为index.php?album = rocks,则应将图像上传到“ uploads / rocks”。 但是,现在所有文件都上传到“上传文件”中。

如果我将$ filesFolder变量直接更改为“ uploads / rocks”,则文件将上传到目标文件夹。

难道我做错了什么? 或者,除了使用$ _GET之外,还有没有更好的方法来实现此目的。

您的代码存在的问题是,根据您当前的代码,$ _ GET ['album']不存在,因此永远不会创建扩展路径。 您必须在表单中为GET请求使用隐藏的输入。 但是,如果您打算在实时网站或软件中使用此代码的计划也请告知,请通过验证和消毒正确保护数据。

<form action = "upload.php" method="get" enctype="multipart/form-data">
    <input type="hidden" name="dir" value="album"/>
    <input type="submit"/>
</form>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM