JSFIDDLE
我使用filedrop.js在我的应用程序中创建一个文件存储库结构。上面提到的JSFIDDLE包含这个小模块的所有Javascript / jQuery / HTML和CSS代码。虽然客户端上的所有东西似乎都正常工作(文件可以是DnD的,进度条可以正常工作,控制台显示适当的事件触发器),但是服务器端的结果总是一个空的$_FILES变量。我的(ajax.receiveFile.php)如下所示:
var_dump($_FILES);
ob_start();
$callback = &$_REQUEST['fd-callback'];
$job_id = &$_REQUEST['job_id'];
$subdir = &$_REQUEST['subdir'];
$j = loadJob($job_id);
$save_path = "D:\\JobFiles\\" . $j->gOrderNumber() . "\\" . $subdir . "\\";
if ( ($_FILES['fd-file']['size'] > 0) && is_uploaded_file($_FILES['fd-file']['tmp_name']) ) {
$name = $_FILES['fd-file']['name'];
if (move_uploaded_file($_FILES['fd-file']['tmp_name'], $save_path.$name)) {
$j->addAttachment($subdir,$name);
echo 'true';
} else {
echo 'false';
}
}
ob_end_flush();FileDrop.js似乎在做它应该做的事情,如下所示:


我读过在这里所以,在多个输入类型的“文件”上使用相同的元素name可能会导致错误,但我不确定这里是这样的。我已经对TEMP和TARGET上传文件夹的权限进行了双重和三次检查,我已经确认所有PHP变量都是根据需要通过视觉检查和PHPINFO()设置的。IIS7上的服务器配置是PHP5.4。
如果有人对寻找什么有任何想法,请作出贡献。谢谢!
发布于 2014-10-04 21:59:32
这对我来说很管用:
file_put_contents('uploads/person/7.jpeg', fopen('php://input', 'r'));
https://stackoverflow.com/questions/25698444
复制相似问题