Я создаю скрипт загрузки AJAX PHP, но у меня проблемы.После того, как пользователь выберет изображение для загрузки, оно будет отображаться в контейнере div, который я указал в файле javascript (хорошо).Но перемещение загруженного файла, похоже, не работает, или, по крайней мере, я думаю, что это проблема.Я установил для загрузки / папки разрешение 777.
Вот файл JS:
$(document).ready(function () {
$("#upload-image-button").hide();
var input = document.getElementById("images"),
formdata = false;
function showUploadedItem(source) {
var list = document.getElementById("image-list"),
li = document.createElement("li"),
img = document.createElement("img");
img.src = source;
$("#topic-img-container").html(img);
}
if (window.FormData) {
formdata = new FormData();
$("#upload-image-button").hide();
}
$("input[type='file']").live("change", function(event) {
$("#response").html("Uploading...");
var i = 0, len = this.files.length, img, reader, file;
for (; i < len; i++) {
file = this.files[i];
if (!!file.type.match(/image.*/)) {
if (window.FileReader) {
reader = new FileReader();
reader.onloadend = function (e) {
showUploadedItem(e.target.result, file.fileName);
};
reader.readAsDataURL(file);
}
if (formdata) {
formdata.append("images[]", file);
}
}
}
if (formdata) {
$.ajax({
url: "db/upload_image.php",
type: "POST",
data: formdata,
processData: false,
contentType: false,
success: function (res) {
document.getElementById("response").innerHTML = res;
}
});
}
}, false);
});
Вот файл PHP:
<?php
foreach($_FILES["images"]["error"] as $key => $error) {
if ($error == UPLOAD_ERR_OK) {
print_r($_FILES);
$name = $_FILES["images"]["name"][$key];
move_uploaded_file($FILES["images"]["tmp_name"][$key], "uploads/" . $_FILES["images"]["name"][$key]);
echo $FILES["images"]["tmp_name"][$key];
}
}
echo "Success";
?>
Он попадает в цикл, когда нет ошибки.Когда я захожу в папку загрузки, там нет новых файлов.Есть идеи, почему это может быть?