我需要通过ajax将文件作为表单数据传递并从php中读取?
我有一个有文件的表单。需要发送到php文件。我不想使用
表单提交方法。我得到它..但是图像没有得到。
我的代码如下:
<form class="form-inline" role="form" method="post" name="contact" enctype="multipart/form-data" id="contact_form">
<div class="input-group pull-left">
<input type="text" class="form-control" placeholder="Your Name" name="stream_cotactname" id="stream_cotactname">
</div>
<div style="float:left; margin-left:10px;">
<span style="background:#000;"> <input type="file" placeholder="" name="uploaded_file" id="uploaded_file"></span>
</div>
现在我的javascript是:
<script type="text/javascript">
var formdata = false;
(function () {
var input = document.getElementById("uploaded_file");
formdata = false;
formdata = new FormData();
input.addEventListener("change", function (evt) {
var i = 0, len = this.files.length, img, reader, file;
for ( ; i < len; i++ ) {
file = this.files[i];
if (formdata) {
formdata.append("uploaded_file[]", file);
}
}
}, false);
}());
function contact_mailsend()
{
var app = 'sendmail.php';
$.ajax({
url: app,
async: false,
type:"POST",
data : "stream_cotactname="+name+"&file="+formdata,
dataType: "jsonp",
contentType: 'application/x-www-form-urlencoded',
processData:false,
jsonp: "jsoncallback",
success: function(html){
alert("Thank you. We will be in touch with you");
},
error: function(){
alert("error");
}
});
}
</script>
在这里,如果我print_r(file);
我能够获得指定的名称。但不是表单数据(文件)
提前致谢