php上传文件并显示上传进度的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了php上传文件并显示上传进度的方法。分享给大家供大家参考。具体如下:

记得上传文件的时候要大点,不然还没看出来就上传完了,并且上传的文件不要太大,上G的就算了,2G的我试了,PHP受不了,我测试的是300多M的,记得要调整小php.ini参数啊 “选文件=》提交=》获取信息”要一气呵成哦^ ^

<?php
$prefix = ini_get('session.upload_progress.prefix');
$name  = ini_get('session.upload_progress.name');
$key  = $prefix . $name;
session_start();
if (isset($_POST['get_info'])) {
  $logo = $prefix . $_POST['logo'];
  exit(json_encode($_SESSION[$logo]));
} elseif ($_POST) {
  echo '<script>var finashed = true;</script>';
}
?>
<div id="show_info_div"></div>
<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_div").innerHTML = progress;
    sto = setTimeout("getUploadInfo()", 1000);
  });
}
if (typeof(finashed) !== "undefined")
{
  document.getElementById("show_info_div").innerHTML = "100.00% (上传成功!)";
}
</script>

希望本文所述对大家的php程序设计有所帮助。

相关文章

php sprintf()函数让你的sql操作更安全

$bookSQL=sprintf("UPDATE book SET pass=%s WHERE id=%d",   ...

使用php实现截取指定长度

PHP语言: 根据中文裁减字符串复制代码 代码如下:function cutstr($string,$length, $dot = ' ...') {  if (strlen(...

10个值得深思的PHP面试题

10个值得深思的PHP面试题

文章所罗列的问题虽然看似简单,但是每个背后都涵盖了一个或几个大家容易忽视的基础知识点,希望能够帮助到你的面试和平时工作。 Q1 第一个问题关于弱类型 $str1 = 'yabadab...

利用PHP如何统计Nginx日志的User Agent数据

利用PHP如何统计Nginx日志的User Agent数据

前言 即将用到爬虫,于是打算收集一下User Agent(UA)数据。接着马上想到自己网站的访问日志不就是现成的优质数据源吗?于是愉快的决定写个脚本统计一下Nginx访问日志中的UA信息...

php实现判断访问来路是否为搜索引擎机器人的方法

本文实例讲述了php实现判断访问来路是否为搜索引擎机器人的方法。分享给大家供大家参考。具体分析如下: 很多时候我们需要对网站访客来路进行识别,针对真实用户与搜索引擎作不同动作实现,那么首...