Maison  >  Article  >  développement back-end  >  Comment transférer des fichiers en php et afficher la progression du transfert

Comment transférer des fichiers en php et afficher la progression du transfert

墨辰丷
墨辰丷original
2018-06-12 09:53:452266parcourir

Cet article présente principalement la méthode de téléchargement de fichiers en php et d'affichage de la progression du téléchargement. Il analyse les techniques de transfert de fichiers et d'affichage de la progression du transfert en php avec des exemples. Il est d'une grande valeur pratique. Les amis qui en ont besoin peuvent s'y référer. vers cet article

L'exemple décrit comment télécharger des fichiers en PHP et afficher la progression du téléchargement. Les détails sont les suivants :

N'oubliez pas d'agrandir le fichier lors du téléchargement, sinon il sera téléchargé avant de pouvoir être vu, et le fichier téléchargé ne doit pas être trop gros. Oubliez G. J'ai essayé la 2G, mais PHP n'a pas supporté, j'en ai testé plus de 300M, pensez à ajuster les petits paramètres du php.ini "Sélectionner un fichier => Soumettre => Obtenir des informations" d'un seul coup ^ ^

<?php
$prefix = ini_get(&#39;session.upload_progress.prefix&#39;);
$name  = ini_get(&#39;session.upload_progress.name&#39;);
$key  = $prefix . $name;
session_start();
if (isset($_POST[&#39;get_info&#39;])) {
  $logo = $prefix . $_POST[&#39;logo&#39;];
  exit(json_encode($_SESSION[$logo]));
} elseif ($_POST) {
  echo &#39;<script>var finashed = true;</script>&#39;;
}
?>
<p id="show_info_p"></p>
<form action="index.php" method="POST" enctype="multipart/form-data">
  <input type="hidden" name="<?php echo $name; ?>" value="test">
  <input type="file" name="file"><br>
  <input type="submit" value="提交">
  <input type="button" value="获取信息" onclick="getUploadInfo()">
</form>
<script src="jquery.js"></script>
<script>
var sto = null;
var progress = null;
function getUploadInfo()
{
  $.post("index.php", {"get_info": 1, "logo": "test"}, function(data)
  {
    data = eval("(" + data + ")");
    progress = parseInt(parseInt(data.bytes_processed) * 10000 / parseInt(data.content_length)) / 100 + "%";
    document.getElementById("show_info_p").innerHTML = progress;
    sto = setTimeout("getUploadInfo()", 1000);
  });
}
if (typeof(finashed) !== "undefined")
{
  document.getElementById("show_info_p").innerHTML = "100.00% (上传成功!)";
}
</script>

Résumé : Ce qui précède représente l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'étude de chacun.

Recommandations associées :

Méthode php pour implémenter le tri de tableaux basé sur ArraySortUtil

Méthode php pour utiliser curl pour obtenir des informations statistiques sur le site Web Compete

php est basé sur la classe seoreport pour vérifier et obtenir des informations sur le référencement du site Web

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn