我试图上传图像和一些输入到服务器,使用Jquery,POST方法。我试过这个代码但它是抛出我的错误: POST 500(内部服务器错误)。 有人能帮我弄清楚代码有什么问题。感谢您的帮助。使用jquery上传文件:POST 500(内部服务器错误)
<!DOCTYPE html>
<html>
<head>
<title>Image Upload Form</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script type="text/javascript">
function submitForm() {
console.log("submit event");
var fd = new FormData(document.getElementById("fileinfo"));
fd.append("label", "WEBUPLOAD");
$.ajax({
url: "http://URL?api_token=fb24085da58dad6decb9271fb170ef2ed8c80617",
type: "POST",
data: fd,
processData: false, // tell jQuery not to process the data
contentType: false // tell jQuery not to set contentType
}).done(function(data) {
console.log("PHP Output:");
console.log(data);
});
return false;
}
</script>
</head>
<body>
<form method="post" id="fileinfo" name="fileinfo" onsubmit="return submitForm();">
<label>Select a file:</label><br>
<input type="file" name="file" required />
<input type="text" name="text" required />
<input type="submit" value="Upload" />
</form>
<div id="output"></div>
</body>
</html>
当调试运行停止在这一部分,似乎这个问题是从客户正在添加,因为在serveur图像是必需的,它不能为空,所以这就是他抛出错误的原因。 :
是您的URL真正的 “http:// URL api_token = fb24085da58dad6decb9271fb170ef2ed8c80617” 还是你替换 'URL' 真实的URL,当你张贴的问题吗? –
是的,我确实取代了它(我没有权利发布它) – Amina
您的表单应该有enctype =“multipart/form-data”。见[这个问题](http://stackoverflow.com/questions/4526273/what-does-enctype-multipart-form-data-mean)。 –