php+ajax实现带进度条的上传图片功能【附demo源码下载】


Posted in PHP onSeptember 14, 2016

本文实例讲述了php+ajax实现带进度条的上传图片功能。分享给大家供大家参考,具体如下:

运行效果图如下:

php+ajax实现带进度条的上传图片功能【附demo源码下载】

代码如下:

<?php
if(isset($_FILES["FileInput"]) && $_FILES["FileInput"]["error"]== UPLOAD_ERR_OK)
{
  ############ Edit settings ##############
  $UploadDirectory  = 'F:/Websites/file_upload/uploads/'; //specify upload directory ends with / (slash)
  ##########################################
  /*
  Note : You will run into errors or blank page if "memory_limit" or "upload_max_filesize" is set to low in "php.ini".
  Open "php.ini" file, and search for "memory_limit" or "upload_max_filesize" limit
  and set them adequately, also check "post_max_size".
  */
  //check if this is an ajax request
  if (!isset($_SERVER['HTTP_X_REQUESTED_WITH'])){
    die();
  }
  //Is file size is less than allowed size.
  if ($_FILES["FileInput"]["size"] > 5242880) {
    die("File size is too big!");
  }
  //allowed file type Server side check
  switch(strtolower($_FILES['FileInput']['type']))
    {
      //allowed file types
      case 'image/png':
      case 'image/gif':
      case 'image/jpeg':
      case 'image/pjpeg':
      case 'text/plain':
      case 'text/html': //html file
      case 'application/x-zip-compressed':
      case 'application/pdf':
      case 'application/msword':
      case 'application/vnd.ms-excel':
      case 'video/mp4':
        break;
      default:
        die('Unsupported File!'); //output error
  }
  $File_Name     = strtolower($_FILES['FileInput']['name']);
  $File_Ext      = substr($File_Name, strrpos($File_Name, '.')); //get file extention
  $Random_Number   = rand(0, 9999999999); //Random number to be added to name.
  $NewFileName    = $Random_Number.$File_Ext; //new file name
  if(move_uploaded_file($_FILES['FileInput']['tmp_name'], $UploadDirectory.$NewFileName ))
    {
    die('Success! File Uploaded.');
  }else{
    die('error uploading File!');
  }
}
else
{
  die('Something wrong with upload! Is "upload_max_filesize" set correctly?');
}

完整实例代码点击此处本站下载。

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

PHP 相关文章推荐
PHP中使用gettext来支持多语言的方法
May 02 PHP
那些年一起学习的PHP(一)
Mar 21 PHP
PHP 中关于ord($str)&amp;gt;0x80的详细说明
Sep 23 PHP
php中如何使对象可以像数组一样进行foreach循环
Aug 09 PHP
php获取URL中带#号等特殊符号参数的解决方法
Sep 02 PHP
PHP回溯法解决0-1背包问题实例分析
Mar 23 PHP
PHP在线调试执行的实现方法(附demo源码)
Apr 28 PHP
php实现36进制与10进制转换功能示例
Jan 10 PHP
替换php字符串中的单引号为双引号的方法
Feb 16 PHP
详解PHP5.6.30与Apache2.4.x配置
Jun 02 PHP
PHP将数据导出Excel表中的实例(投机型)
Jul 31 PHP
PHP filesize函数用法浅析
Feb 15 PHP
PHP自定义函数实现格式化秒的方法
Sep 14 #PHP
PHP经典算法集锦【经典收藏】
Sep 14 #PHP
微信支付的开发流程详解
Sep 13 #PHP
PHP仿微信多图片预览上传实例代码
Sep 13 #PHP
微信支付PHP SDK ―― 公众号支付代码详解
Sep 13 #PHP
PHP基于单例模式编写PDO类的方法
Sep 13 #PHP
利用PHP将图片转换成base64编码的实现方法
Sep 13 #PHP
You might like
一个php作的文本留言本的例子(一)
2006/10/09 PHP
PHP中的错误处理、异常处理机制分析
2012/05/07 PHP
通过修改配置真正解决php文件上传大小限制问题(nginx+php)
2015/09/23 PHP
php制作圆形用户头像的实例_自定义封装类源代码
2017/09/18 PHP
JavaScript iframe的相互操作浅析
2009/10/14 Javascript
jquery validator 插件增加日期比较方法
2010/02/21 Javascript
jquery判断字符输入个数(数字英文长度记为1,中文记为2,超过长度自动截取)
2010/10/15 Javascript
jquery实现盒子下拉效果示例代码
2013/09/12 Javascript
屏蔽IE弹出&quot;您查看的网页正在试图关闭窗口,是否关闭此窗口&quot;的方法
2013/12/31 Javascript
一个小例子解释如何来阻止Jquery事件冒泡
2014/07/17 Javascript
jQuery中mouseover事件用法实例
2014/12/26 Javascript
js闭包引起的事件注册问题介绍
2016/03/29 Javascript
再次谈论React.js实现原生js拖拽效果引起的一系列问题
2016/04/03 Javascript
Bootstrap实现水平排列的表单
2016/07/04 Javascript
react实现pure render时bind(this)隐患需注意!
2017/03/09 Javascript
详解Nodejs之静态资源处理
2017/06/05 NodeJs
JS设计模式之单例模式(一)
2017/09/29 Javascript
关于单文件组件.vue的使用
2018/09/20 Javascript
React+Redux实现简单的待办事项列表ToDoList
2019/09/29 Javascript
[01:33:30]DOTA2-DPC中国联赛 正赛 RNG vs Phoenix BO3 第二场 2月5日
2021/03/11 DOTA
深入剖析Python的爬虫框架Scrapy的结构与运作流程
2016/01/20 Python
Python备份目录及目录下的全部内容的实现方法
2016/06/12 Python
python实现电脑自动关机
2018/06/20 Python
pandas 转换成行列表进行读取与Nan处理的方法
2018/10/30 Python
Django集成CAS单点登录的方法示例
2019/06/10 Python
浅析python表达式4+0.5值的数据类型
2020/02/26 Python
Python unittest如何生成HTMLTestRunner模块
2020/09/08 Python
网友共享的几个面试题关于Java和Unix等方面的
2016/09/08 面试题
什么是封装
2013/03/26 面试题
竞选学生会主席演讲稿
2014/04/24 职场文书
工程索赔意向书
2014/08/30 职场文书
群众路线自我剖析材料
2014/10/08 职场文书
2015国际残疾人日活动总结
2015/03/24 职场文书
投诉书范文
2015/07/02 职场文书
2016学校元旦晚会经典开场白台词
2015/12/03 职场文书
python中的class_static的@classmethod的巧妙用法
2021/06/22 Python