Javascript 如何在ajax请求中将带有文件upload的输入文本发送到upload.php,以及如何接收

Javascript 如何在ajax请求中将带有文件upload的输入文本发送到upload.php,以及如何接收,javascript,php,ajax,Javascript,Php,Ajax,如何将表单门中的文本(如书名id:bname)添加到发送到upload.php页面的请求中,以及如何在upload.php页面中接收文本 function uploadFile(){ var file = document.getElementById("upload").files[0]; var formdata = new FormData(); formdata.append("upload", file); var ajax =

如何将表单门中的文本(如书名
id:bname
)添加到发送到
upload.php
页面的请求中,以及如何在
upload.php
页面中接收文本

function uploadFile(){     
    var file = document.getElementById("upload").files[0];  
    var formdata = new FormData();  
    formdata.append("upload", file);    
    var ajax = new XMLHttpRequest();  
    ajax.upload.addEventListener("progress", progressHandler, false);  
    ajax.addEventListener("load", completeHandler, false);  
    ajax.addEventListener("error", errorHandler, false);  
    ajax.addEventListener("abort", abortHandler, false);  
    ajax.open("POST", "upload.php");  
    ajax.send(formdata);  
    clikedbtn();
}  
上传文件中的函数

function progressHandler(event){  
    var percent = (event.loaded / event.total) * 100;  
    document.getElementById("progressBar").value = Math.round(percent);  

}    
function completeHandler(event){  
    document.getElementById("progressBar").value = 0;
}
function errorHandler(event){}
function abortHandler(event){}
function clikedbtn(){}
html标记

<form method="post" enctype="multipart/form-data">
    <label for="bname">book name</label>
    <input name="bname" id="sname" type="text">
    <label for="dbname">bood desc</label>
    <input name="dbname" id="dbname" type="text">
    <input id="upload" name="upload" type="file">
    <input id="btnupload" type="button" value="add" onclick="uploadFile() ">
</form>

书名
bood desc
upload.php
我想使用我将在此页面中发送的文本

<?php
$fileName = $_FILES["upload"]["name"]; 
$fileTmpLoc = $_FILES["upload"]["tmp_name"]; 
$fileType = $_FILES["upload"]["type"];
$fileSize = $_FILES["upload"]["size"]; 
$fileErrorMsg = $_FILES["upload"]["error"];

if (!$fileTmpLoc) { // if file not chosen
echo "ERROR: Please browse for a file before clicking the upload button.";
exit();
}
if(move_uploaded_file($fileTmpLoc, "upload/$fileName")){
echo "$fileName upload is complete";

} else {
echo "move_uploaded_file function failed";
}

?>

用于接收响应:

  var ajax = new XMLHttpRequest();// under this line 
  ajax.onreadystatechange = function() {
        if (ajax.readyState === XMLHttpRequest.DONE && ajax.status === 200) {
            // you can hanle ajx.responseText 
        }
    };