I am trying to upload images in a folder named "patents". It works, but I am trying to post its name using AJax in order to get json_encode messages from "checkout.php" in case filename exists or its invalid. Here is my code:
$('#checkout_form').on('submit', function(e) {
e.preventDefault();
var filename = $('#checkout_form input[name=file]').val();
$.ajax({
url: "checkout.php",
type: "POST",
enctype: 'multipart/form-data',
data: {
file: filename,
},
dataType: 'json',
success: function(response) {
alert('pau');
}
});
});
checkout.php
$allowedExts = array("gif", "jpeg", "jpg", "png");
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);
if ((($_FILES["file"]["type"] == "image/gif") || ($_FILES["file"]["type"] == "image/jpeg") || ($_FILES["file"]["type"] == "image/jpg") || ($_FILES["file"]["type"] == "image/pjpeg") || ($_FILES["file"]["type"] == "image/x-png") || ($_FILES["file"]["type"] == "image/png")) && ($_FILES["file"]["size"] < 80000) && in_array($extension, $allowedExts)) {
if ($_FILES["file"]["error"] > 0) {
echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
} else {
if (file_exists("patents/" . $_FILES["file"]["name"])) {
echo json_encode($_FILES["file"]["name"] . " already exists. ");
} else {
move_uploaded_file($_FILES["file"]["tmp_name"], "patents/" . $_FILES["file"]["name"]);
}
}
} else {
echo json_encode('invalid file');
}
When click submit button nothing happens, it's not shown no error message and the form is not submitted.