Я начинаю с HTML5, и у меня возникают проблемы с отправкой файла из HTML5 File API в PHP через XHR2. Вот код (упрощенно):
Клиентский JavaScript:
fs.root.getFile("test.mp3", {create: false, exclusive: false}, function(fileEntry) {
var xhr = new XMLHttpRequest();
xhr.open("POST", "http://localhost/Server/?fileName=" + fileEntry.name);
xhr.setRequestHeader("Cache-Control", "no-cache");
xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");
xhr.setRequestHeader("X-File-Name", fileEntry.name);
xhr.send(fileEntry);
}, null);
Сервер PHP:
file_put_contents($_GET["fileName"], file_get_contents('php://input'));
Я всегда получаю и создаю файл test.mp3 с PHP, но внутри файла есть:
[object Object]
вместо реального mp3 контента. Файл существует в файловой системе HTML5, и к тому времени, которое требуется для загрузки, я думаю, что весь контент файла загружается, поэтому, возможно, проблема в коде PHP.
Я пытался создать объект FormData, но в Android с PhoneGap (теперь Cordova) говорится, что FormData не определен.
Спасибо за ваше время и извините за мой английский; P