Я делаю веб-страницу, где пользователю нужно загрузить фотографию. Поскольку эта фотография будет связана с уникальным идентификатором, я хочу, чтобы эта фотография была передана на сервер и сохранена как NUMBER.jpg или NUMBER.png или любое другое расширение. Таким образом, событие на поле ввода типа называется, в javascritpt коде следующим образом:Как загрузить файл с javascript на сервер?
var file = document.getElementById("foto").files[0];
document.getElementById("pathFoto").value = file.name;
var formData = new FormData();
formData.append('foto',file,file.name);
var xhr = new XMLHttpRequest();
xhr.open('POST','php/handler.php',true);
xhr.onload = function() {
if (xhr.status == 200){
console.log("Done");
}
else{
console.log("An error ocurred " + xhr.responseText);
}
}
xhr.send(formData);
На PHP стороне вещей, это то, что я делаю:
$image = $_POST["foto"];
file_put_contents("atest.jpg",$image);
Теперь Я получаю ошибку что «foto» является неопределенным индексом. Может ли кто-нибудь сказать мне, что я делаю неправильно?
Возможного дубликат [JQuery Ajax загрузка файла] (HTTP: // StackOverflow .com/вопросы/2320069/jquery-ajax-file-upload) –