У меня есть форма, в которой мне нужно отправить имя пользователя вместе с его профилем. Итак, я создал форму ниже, используя HTML & Bootstrap -
<form action="" method="post" id="demoForm" enctype="multipart/form-data">
<div class="form-group">
<label for="">Upload file</label>
<input type="file" name="file" id="file" class="form-control">
</div>
<div class="form-group">
<label for="">Your Name</label>
<input type="text" name="name" id="name" class="form-control">
</div>
<div class="form-group">
<input type="submit" name="save" id="save" value="Save" class="form-control btn btn-success">
</div>
</form>
<div id="result"></div>
Теперь мне нужно отправить эти данные на мой сервер с помощью PHP. Итак, я написал следующий код Ajax с использованием jQuery -
$(document).ready(function(){
$('#demoForm').submit(function(e){
e.preventDefault();
var formData = new FormData(this);
$.ajax({
url: "ajax.php",
type: "POST",
data: formData,
contentType : false,
processData: false,
success: function(data){
$('#result').html(data);
}
});
});
});
Теперь я написал следующий код PHP в файле ajax.php -
if(isset($_POST['save'])){
$name = $_POST['name'];
$file = $_FILES['file']['name'];
if(!empty($file) && !empty($name)){
$fileName = $_FILES['file']['name'];
$tmp = $_FILES['file']['tmp_name'];
$upload = move_uploaded_file($tmp,'uploads/'.$fileName);
if($upload){
echo "<h2>".$name.", your file has been uploaded successfully!</h2>";
}else{
echo "<h2>Something went wrong!</h2>";
}
}else{echo "File cannot be empty.";}
}else{echo "There is a problem";}
Теперь проблема в том, что яне получить ответ из файла php. Другими словами, файл ajax.php не получает данные, отправленные через Ajax, из файла index.php. Может ли кто-нибудь помочь мне, указав, какие ошибки я сделал? Также поделитесь, если какое-либо решение есть с вами. Благодаря.