我想上传文件并发送到服务器而不刷新页面。使用ajax,jquery,php上传文件
我有以下线在我的HTML文件
<form id="FileUploader" enctype="multipart/form-data" >
<input type="file" name="mfile" id="mfile" style='width:100%;' onchange="uploaded()">
</form>
function uploaded()
{
alert($('form#FileUploader')[0]);
var formData=new FormData($('form#FileUploader')[0]);
//alert(formData);
$.ajax({
url: "<?php echo $_SESSION['webpage']."/upload" ?>",
type: "POST",
async: true,
dataType: "JSONP",
data : formData
})
.success (function(response){
alert(response);
})
.error (function() { alert("Error") ; }) ;
}
upload.php的文件
if ($_FILES["mfile"]["error"] >0)
{
echo "Error: " ;
}
else
{
if (file_exists("upload_email_files/" . $_FILES["mfile"]["name"]))
{
echo $_POST["file"]. " already exists. ";
}
else
{
$otp= move_uploaded_file('$_FILES["mfile"]"name"]','/../upload_templates/');
}
}
它不工作。可有人帮我在这? 它不是在upload.php中,并给我错误非法调用。
感谢, 希里什
uplaoded()应该被上传(),在手不会解决问题,但应该这样做 – curtisk
如果这是您想要发送请求的文件的名称,那么当您使用'upload.php'时,您在'url'中使用'Upload_file' est to ie'url:“<?php echo $ _SESSION ['webpage']。”/ upload.php“?>”' – Cyclonecode
这是输入错误编辑帖子 – user2510115