使用ajax发送表单PHP

Using ajax To Send Forms PHP

本文关键字:表单 PHP ajax 使用      更新时间:2023-09-26

我有一个表单来上传文件与2个参数(type =" file"type =" text")通过ajax在PHP。我在谷歌上找到了下面的脚本。脚本工作完美,也可视化的进度条,但我只能花什么关系的参数type = "file",但我可以添加到我写的字段type = "text"。

<script>
function _(el){
    return document.getElementById(el);
}
function uploadFile(){
    var file = _("userfile").files[0];
    var formdata = new FormData();
    formdata.append("userfile", 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", "TEST.php");
    ajax.send(formdata);
}
function progressHandler(event){
    _("loaded_n_total").innerHTML = "Uploaded "+event.loaded+" bytes of "+event.total;
    var percent = (event.loaded / event.total) * 100;
    _("progressBar").value = Math.round(percent);
    _("status").innerHTML = Math.round(percent)+"% uploaded... please wait";
}
function completeHandler(event){
    _("status").innerHTML = event.target.responseText;
    _("progressBar").value = 0;
    location.href="home.php";
}
function errorHandler(event){
    _("status").innerHTML = "Upload Failed";
}
function abortHandler(event){
    _("status").innerHTML = "Upload Aborted";
}
</script>
<form id="upload_form" enctype="multipart/form-data" method="post">
<input class="formUpDes" type="text" name="description" id="description">
<input class="formUpFile" type="file" name="userfile" id="userfile">
<input class="formUpBt" type="button" value="upload" onclick="uploadFile()">
<progress class="formUpProg" id="progressBar" value="0" max="100"></progress>
<h3 id="status"></h3>
<p id="loaded_n_total"></p>
</form>

我将在UploadFile()函数中添加文本字段中写入的文本,以便将其传递到PHP文件。

请帮帮我

添加到uploadFile():

formdata.append('description', _('description').value);