2012-01-28 65 views
0

我试图实现Valum的文件上传(由本科隆https://github.com/bencolon/file-uploader改进),我遇到了一个问题。以前,我的upload.php根据某些输入字段设置了上传目标。在这里看到:如何在使用基于AJAX的文件上传器时动态设置上传目标路径?

//Directory where files are stored 
if ($grade == '9') 
{ 
$target = "storage/g9/"; 
} 
elseif ($grade == '10') 
{ 
$target = "storage/g10/"; 
} 
elseif ($grade == '11') 
{ 
$target = "storage/g11/"; 
} 
elseif ($grade == '12') 
{ 
$target = "storage/g12/"; 
} 


$target = $target . $_POST['snumber'] . "." . $extension;  
move_uploaded_file($_FILES['upload']['tmp_name'], $target); 

现在,一个基于AJAX文件上传它开始上传之前,你甚至打到进行提交,PHP没有得到机会皮卡输入字段来决定哪些上传路径将是,它只能去预定义的一个。要查看AJAX文件上传器如何操作,请查看their PHP on GitHub。我如何制作它,以便上传路径根据用户输入字段而变化?

回答

0

我相信PHP在开始上传文件时需要知道文件的保存位置。但是,您可以在完成上传后通过PHP的rename()函数移动该文件。

还有move_uploaded_file()(尽管我自己从来没有用过它)。

+0

那么你是否建议我有一个辅助临时文件夹?我理解的PHP上传工作是这样的:客户端 - >服务器的PHP临时文件夹 - >您在PHP脚本中设置的路径。因此,在PHP的默认临时文件夹之后,将其移至第二个临时文件夹,直到AJAX完成上传,然后在上传脚本的末尾再次将其移动到我要移动它的位置,然后将其移至第二个临时文件夹。 – 2012-01-29 00:15:47

相关问题