首頁 >後端開發 >php教程 >php傳輸檔案及顯示傳輸進度的方法

php傳輸檔案及顯示傳輸進度的方法

墨辰丷
墨辰丷原創
2018-06-12 09:53:452299瀏覽

這篇文章主要介紹了php上傳檔案並顯示上傳進度的方法,實例分析了php傳輸檔案及顯示傳輸進度的技巧,非常具有實用價值,需要的朋友可以參考下

本文實例講述了php上傳檔案並顯示上傳進度的方法。具體如下:

記得上傳檔案的時候要大點,不然還沒看出來就上傳完了,並且上傳的檔案不要太大,上G的就算了,2G的我試了,PHP受不了,我測試的是300多M的,記得要調整小php.ini參數啊“選文件=”提交=”獲取信息”要一氣呵成哦^ ^

<?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>

總結#:以上就是本篇的全部內容,希望對大家的學習有所幫助。

相關推薦:

php基於ArraySortUtil實作陣列排序的方法

php使用curl取得Compete統計網站資訊的方法

php基於seoreport類別針對網站SEO資訊檢查與取得

#

以上是php傳輸檔案及顯示傳輸進度的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn