Home  >  Article  >  Backend Development  >  php ajax implements file upload progress bar, _PHP tutorial

php ajax implements file upload progress bar, _PHP tutorial

WBOY
WBOYOriginal
2016-07-12 08:55:13846browse

php ajax implements the file upload progress bar,

This example is about the implementation of the progress bar when php files are uploaded, mainly using ajax technology, and also using html5, if necessary Friends can do some research.
This example has two files:

upload_form.html:

<!DOCTYPE html>
<html>
<head>
<script>
function _(el){
  return document.getElementById(el);
}
function uploadFile(){
  var file = _("file1").files[0];
  // alert(file.name+" | "+file.size+" | "+file.type);
  var formdata = new FormData();
  formdata.append("file1", 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", "file_upload_parser.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;
}

function errorHandler(event){
  _("status").innerHTML = "Upload Failed";
}

function abortHandler(event){
  _("status").innerHTML = "Upload Aborted";
}
</script>
</head>
<body>
<h2>HTML5 File Upload Progress Bar Tutorial</h2>
<form id="upload_form" enctype="multipart/form-data" method="post">
 <input type="file" name="file1" id="file1"><br>
 <input type="button" value="Upload File" onclick="uploadFile()">
 <progress id="progressBar" value="0" max="100" style="width:300px;"></progress>
 <h3 id="status"></h3>
 <p id="loaded_n_total"></p>
</form>
</body>
</html>

file_upload_parser.php:

<&#63;php
$fileName = $_FILES["file1"]["name"]; // The file name
$fileTmpLoc = $_FILES["file1"]["tmp_name"]; // File in the PHP tmp folder
$fileType = $_FILES["file1"]["type"]; // The type of file it is
$fileSize = $_FILES["file1"]["size"]; // File size in bytes
$fileErrorMsg = $_FILES["file1"]["error"]; // 0 for false... and 1 for true
if (!$fileTmpLoc) { // if file not chosen
  echo "ERROR: Please browse for a file before clicking the upload button.";
  exit();
}
if(move_uploaded_file($fileTmpLoc, "test_uploads/$fileName")){
  echo "$fileName upload is complete";
} else {
  echo "move_uploaded_file function failed";
}
&#63;>

The above is the entire content of this article, I hope it will be helpful to everyone’s study.

Articles you may be interested in:

  • jQuery Ajax file upload (php)
  • ajax php build progress bar readyState various states
  • ajax php build progress Code [readyState description of each status]
  • File, FileReader and Ajax file upload example analysis (php)
  • Code example of how to implement asynchronous file upload through Ajax in php
  • php ajax implementation of big data queuing export ideas with progress bar and source code
  • php ajax implementation of image file upload function example
  • ThinkPHP combined with AjaxFileUploader to achieve refresh-free file upload method
  • Ajax_upload upload progress bar code implemented by PHP apc ajax

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/1117077.htmlTechArticlephp ajax implements the file upload progress bar. This example is about the implementation of the progress bar when uploading php files, mainly using ajax technology, and also uses html5. Friends in need can study it...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn