Я пытаюсь выполнить загрузку файла изображения с помощью ajax без обновления страницы, но файл не будет перемещен в указанную папку. Я сделал очень простой файл для загрузки php-кода, чтобы избежать ошибок и разработать его позже.
if($_SERVER["REQUEST_METHOD"]=="POST"){ $file = $_FILES["uploaded"] $target_dir = "user_image/"; $target_file = $target_dir . basename($_FILES["uploaded"]["name"]); move_uploaded_file($_FILES["uploaded"]["tmp_name"],$target_file); }
Мои аякс и JavaScript работают нормально, но в целевом файле нет изображения user_image /
<script charset="UTF-8"> function _(id){ return document.getElementById(id); } _("file_upload").onchange = function() { //_("file_upload").submit(); var id = _("user_id").innerHTML; var file = _("file_upload").files[0]; var formdata = new FormData(); formdata.append("file1",file); var ajax = new XMLHttpRequest(); ajax.onreadystatechange = function(){ if(ajax.readyState==4 && ajax.status==200){ _("one").remove(); var img = document.createElement('img'); var first_path = '/user_image/'; var path = first_path.concat(id,'.png'); img.setAttribute('alt','User image'); img.setAttribute('id','one'); img.setAttribute('src',path); _("user").appendChild(img); alert("end"); } else{ _("one").remove(); var img = document.createElement('img'); img.setAttribute('src','/img/loading.gif'); img.setAttribute('alt','User image'); img.setAttribute('id','one'); _("user").appendChild(img); } } ajax.open("POST","upload_image.php"); ajax.send(formdata); }; </script>