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数组交集的优化代码分析
Mar 06 PHP
php expects parameter 1 to be resource, array given 错误
Mar 23 PHP
php警告Creating default object from empty value 问题的解决方法
Apr 02 PHP
php读取csc文件并输出
May 21 PHP
PHP定时执行任务的3种方法详解
Dec 21 PHP
PHP基于单例模式实现的mysql类
Jan 09 PHP
php生成酷炫的四个字符验证码
Apr 22 PHP
PHP strip_tags保留多个HTML标签的方法
May 22 PHP
Yii2实现同时搜索多个字段的方法
Aug 10 PHP
PHP获取中国时间(上海时区时间)及美国时间的方法
Feb 23 PHP
PHP MVC框架中类的自动加载机制实例分析
Sep 18 PHP
在Laravel中使用MongoDB的方法示例
Nov 11 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 线程安全与非线程安全版本的区别深入解析
2013/08/06 PHP
php实现cc攻击防御和防止快速刷新页面示例
2014/02/13 PHP
浅析PHP数据导出知识点
2018/02/17 PHP
javascript操作cookie_获取与修改代码
2009/05/21 Javascript
基于jquery的loading效果实现代码
2010/11/05 Javascript
JQuery 绑定select标签的onchange事件,弹出选择的值,并实现跳转、传参
2011/01/06 Javascript
passwordStrength 基于jquery的密码强度检测代码使用介绍
2011/10/08 Javascript
javascript 实现键盘上下左右功能的小例子
2013/09/15 Javascript
纯javascript实现四方向文本无缝滚动效果
2015/06/16 Javascript
JS实现漂亮的窗口拖拽效果(可改变大小、最大化、最小化、关闭)
2015/10/10 Javascript
第七篇Bootstrap表单布局实例代码详解(三种表单布局)
2016/06/21 Javascript
iOS和Android用同一个二维码实现跳转下载链接的方法
2016/09/28 Javascript
Angularjs单选改为多选的开发过程及问题解析
2017/02/17 Javascript
使用jQuery ajaxupload插件实现无刷新上传文件
2017/04/23 jQuery
vue webuploader 文件上传组件开发
2017/09/23 Javascript
JS实现生成由字母与数字组合的随机字符串功能详解
2018/05/25 Javascript
JavaScript 中的无穷数(Infinity)详解
2020/02/13 Javascript
jquery实现的放大镜效果示例
2020/02/24 jQuery
[45:34]完美世界DOTA2联赛PWL S3 Rebirth vs CPG 第一场 12.18
2020/12/19 DOTA
python在Windows8下获取本机ip地址的方法
2015/03/14 Python
Python的socket模块源码中的一些实现要点分析
2016/06/06 Python
python函数中return后的语句一定不会执行吗?
2017/07/06 Python
基于Python函数的作用域规则和闭包(详解)
2017/11/29 Python
Python处理CSV与List的转换方法
2018/04/19 Python
使用TensorFlow实现二分类的方法示例
2019/02/05 Python
Python使用指定端口进行http请求的例子
2019/07/25 Python
python并发爬虫实用工具tomorrow实用解析
2019/09/25 Python
基于keras 模型、结构、权重保存的实现
2020/01/24 Python
python按照list中字典的某key去重的示例代码
2020/10/13 Python
基于Modernizr 让网站进行优雅降级的分析
2013/04/21 HTML / CSS
美国在线宠物商店:Chewy
2019/01/12 全球购物
学员自我鉴定
2014/03/19 职场文书
保密工作责任书
2014/04/16 职场文书
关于战胜挫折的名言警句大全!
2019/07/05 职场文书
Java无向树分析 实现最小高度树
2022/04/09 Javascript
详解SQL报错盲注
2022/07/23 SQL Server