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

 更新时间:2016年09月14日 12:14:06   作者:懒人  
这篇文章主要介绍了php+ajax实现带进度条的上传图片功能,涉及php文件传输及ajax无刷新提交的相关操作技巧,并附带demo源码供读者下载参考,需要的朋友可以参考下

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

运行效果图如下:

代码如下:

<?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运算与运算符用法总结》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php操作office文档技巧总结(包括word,excel,access,ppt)》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

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

相关文章

  • PHP生成唯一订单号

    PHP生成唯一订单号

    这篇文章主要给大家介绍了一位网友PHP生成唯一订单号的思路和示例,感觉非常不错,需要的朋友可以参考下
    2015-07-07
  • thinkphp框架下404页面设置 仅三步

    thinkphp框架下404页面设置 仅三步

    这篇文章主要为大家详细介绍了ThinkPHP 404页面的设置方法,仅需要三步实现404页面的设置,感兴趣的朋友可以参考一下
    2016-05-05
  • 详解PHP渗透测试文件包含漏洞与利用

    详解PHP渗透测试文件包含漏洞与利用

    这篇文章主要介绍了PHP渗透测试文件包含漏洞与利用,文件漏洞是一个非常常见的漏洞,这种类型的漏洞虽然有些难以利用,但一旦利用成功就会造成非常危险的后果。本文将详细讲讲PHP反序列化漏洞的原理及示例,感兴趣的可以了解一下
    2022-07-07
  • PHP chop()函数讲解

    PHP chop()函数讲解

    今天小编就为大家分享一篇关于PHP chop()函数讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • 浅析PHP编程中10个最常见的错误

    浅析PHP编程中10个最常见的错误

    PHP是个伟大的web开发语言,灵活的语言,但是看到php程序员周而复始的犯的一些错误。我做了下面这个列表,列出了PHP程序员经常犯的10中错误,大多数和安全相关。看看你犯了几种
    2014-08-08
  • 基于PHP CURL用法的深入分析

    基于PHP CURL用法的深入分析

    本篇文章是对PHP中的CURL用法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • php网站来路获取代码(针对搜索引擎)

    php网站来路获取代码(针对搜索引擎)

    获取网站来路(针对搜索引擎)
    2010-06-06
  • PHP使用HTML5 FileApi实现Ajax上传文件功能示例

    PHP使用HTML5 FileApi实现Ajax上传文件功能示例

    这篇文章主要介绍了PHP使用HTML5 FileApi实现Ajax上传文件功能,结合实例形式分析了HTML5 FileApi的功能、原理及php使用HTML5 FileApi实现ajax上传的相关操作技巧,需要的朋友可以参考下
    2019-07-07
  • php判断访问IP的方法

    php判断访问IP的方法

    这篇文章主要介绍了php判断访问IP的方法,涉及php针对服务器端预定义变量$_SERVER的相关判断与使用技巧,需要的朋友可以参考下
    2015-06-06
  • Laravel实现批量更新多条数据

    Laravel实现批量更新多条数据

    这篇文章主要介绍了Laravel实现批量更新多条数据,需要的朋友可以参考下
    2020-04-04

最新评论