mat*_*wka 9 javascript php drag-and-drop
我的文件上传有问题.我使用的描述非常方法本文章.我从HERE下载了作者发布的整个脚本.
该应用程序旨在通过HTML5拖放加载文件,然后通过javascript,通过ajax请求将它们发送到服务器端.
一切正常但当我想从AJAX请求头读取参数时会出现问题.这是PHP"文件阅读器"的代码:
$fn = (isset($_SERVER['HTTP_X_FILENAME']) ? $_SERVER['HTTP_X_FILENAME'] : false);
if ($fn) {
//above there is the upload of the file with file_put_contents function
//which actually works fine when I replace $fn with my own value and ommit the "if" condition
Run Code Online (Sandbox Code Playgroud)
之前,启动XMLHttpRequest.setRequestHeader方法以设置"X_FILENAME"标头.这是javascript:
var xhr = new XMLHttpRequest();
// start upload
xhr.open("POST", $id("upload").action, true);
xhr.setRequestHeader("X_FILENAME", file.name);
xhr.send(file);
Run Code Online (Sandbox Code Playgroud)
这是证据(来自我Chrome的"萤火虫"的作物):

当我的var_dump的$ FN变量在PHP中返回布尔值FALSE.怎么了?
PS我在Win7 x64上使用XAMPP v1.8.1与Apache 2.4.3和PHP 5.4.7.我在最新的Chrome上运行该网站.您可以猜测该站点正在localhost上运行.我没有更改php.ini文件中的任何内容 - 一切都设置为默认值.
Win*_*ian 17
下划线似乎不是标题名称的有效字符.使用连字符,它将工作得很漂亮.
xhr.setRequestHeader("X-FILENAME", file.name);
Run Code Online (Sandbox Code Playgroud)
并且PHP中不需要进行任何更改.