一、 生活中常见的地方:
  a) 例如邮箱、空间、文库、百度云、微爱等地方,都可以看到文件的上传和下载的应用,因此,上传和下载的功能非常重要!
二、 PHP当中的文件上传和下载
  a) 我们需要进行一些设置,来使我们的表单具有提交文件的功能!
  b) 客户端的设置:
    i. 其实就是表单的设置:
      1. input表单项中的type属性值必须是file类型
      2. form表单头部需要添加一个通行证:enctype="multipart/form-data",含义为让服务器认识到我们要在这个表单中上传文件了!
      3. 上传方式必须是POST方式,否则无法上传
    ii. 在php脚本获取上传文件信息的方式:
      1. $_FILES可以获取存储到数组中的文件信息
  c) 服务器端的设置:
    i. 其实就是用来过滤用户上传的文件的,并不是所有文件用户都能往服务器提交,必须经过php脚本的处理之后,才可以提交!搜索 file_uploads 在php.ini当中
      1. 开启允许提交文件的按钮:【php.ini当中】file_uploads = On
      2. 文件上传到服务器的临时存储目录:
        upload_tmp_dir ="D:/Wamp/tmp"
      3. 服务器允许上传的文件最大大小:
        upload_max_filesize = 2M
      4. 服务器允许上传的最大文件数量:
        max_file_uploads = 20
      5. 表单所允许的最大上传数据大小:
        post_max_size = 8M
  d) 上传文件的数据格式:

  
    i. pic:代表了form表单中input表单项的名字
    ii. name:文件的名称
    iii. type:文件的类型
    iv. tmp_name:临时存储的文件名
    v. error:错误号:0,1,2,3,4,6,7,没一个错误号都代表了一种上传中遇到的情况
      1. 0:表示没有发生任何错误
      2. 1:表示上传文件的大小超出了约定值。
      3. 2:表示上传文件大小超出了HTML表单隐藏域属性的MAX_FILE_SIZE元素所指定的最大值
      4. 3:表示文件只被部分上传
      5. 4:表示没有上传任何文件
      6. 6:表示找不到临时文件夹。
      7. 7:表示文件写入失败
    vi. Size:上传文件的大小
  e) 关于文件上传的函数:
    i. Move_uploaded_file(临时文件名,新的文件名【含路径】);移动临时文件到指定的目录当中
    ii. Is_uploaded_file(临时文件名):判断临时文件是不是一个有效的上传文件

【php】文件的上传与下载的更多相关文章

  1. java实现ftp文件的上传与下载

    最近在做ftp文件的上传与下载,基于此,整理了一下资料.本来想采用java自带的方法,可是看了一下jdk1.6与1.7的实现方法有点区别,于是采用了Apache下的框架实现的... 1.首先引用3个包 ...

  2. 在SpringMVC框架下实现文件的 上传和 下载

    在eclipse中的javaEE环境下:导入必要的架包 web.xml的配置文件: <?xml version="1.0" encoding="UTF-8" ...

  3. SecureCRT使用sz和rz命令进行文件的上传和下载

    SecureCRT可以使用sz和rz命令进行文件的上传和下载. sz文件下载: 格式:sz 文件名称 即可将服务器的文件下载至本地. rz文件上传: 格式:rz 文件名称 即可将本地文件上传至服务器. ...

  4. 使用FTPClient进行文件服务器内文件的上传和下载

    我用的FTPClient是由Apache组织的commons-net.jar包中的API,这个包用起来非常的方便,很容易上手.我在项目开发的过程中主要用到了文件的上传和下载功能,下面将我开发的代码贴出 ...

  5. iOS开发中文件的上传和下载功能的基本实现-备用

    感谢大神分享 这篇文章主要介绍了iOS开发中文件的上传和下载功能的基本实现,并且下载方面讲到了大文件的多线程断点下载,需要的朋友可以参考下 文件的上传 说明:文件上传使用的时POST请求,通常把要上传 ...

  6. Apache FtpServer 实现文件的上传和下载

    1 下载需要的jar包 Ftp服务器实现文件的上传和下载,主要依赖jar包为: 2 搭建ftp服务器 参考Windows 上搭建Apache FtpServer,搭建ftp服务器 3 主要代码 在ec ...

  7. 初学Java Web(7)——文件的上传和下载

    文件上传 文件上传前的准备 在表单中必须有一个上传的控件 <input type="file" name="testImg"/> 因为 GET 方式 ...

  8. java web(四):request、response一些用法和文件的上传和下载

    上一篇讲了ServletContent.ServletCOnfig.HTTPSession.request.response几个对象的生命周期.作用范围和一些用法.今天通过一个小项目运用这些知识.简单 ...

  9. 黏包-黏包的成因、解决方式及struct模块初识、文件的上传和下载

    黏包: 同时执行多条命令之后,得到的结果很可能只有一部分,在执行其他命令的时候又接收到之前执行的另外一部分结果,这种显现就是黏包. 只有TCP协议中才会产生黏包,UDP协议中不会有黏包(udp协议中数 ...

  10. 步步为营-70-asp.net简单练习(文件的上传和下载)

    大文件的上传一般通过FTP协议,而一般小的文件可以通过http协议来完成 1 通过asp.net 完成图片的上传 1.1 创建html页面 注意:1 method="post" ; ...

随机推荐

  1. Django _web框架本质

    Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. socket服务端 import  ...

  2. guava限流器RateLimiter原理及源码分析

    前言 RateLimiter是基于令牌桶算法实现的一个多线程限流器,它可以将请求均匀的进行处理,当然他并不是一个分布式限流器,只是对单机进行限流.它可以应用在定时拉取接口数据, 预防单机过大流量使用. ...

  3. Spring教程检视阅读

    Spring教程检视阅读 地址 可供参考的教程 <菜鸟学 SSH> <Spring Boot 那些事> <初识 Spring Security> <Sprin ...

  4. 大数据存储利器 - Hbase 基础图解

    由于疫情原因在家办公,导致很长一段时间没有更新内容,这次终于带来一篇干货,是一篇关于 Hbase架构原理 的分享. Hbase 作为实时存储框架在大数据业务下承担着举足轻重的地位,可以说目前绝大多数大 ...

  5. 苹果笔记本 安装 ubuntu 默认没有无线网卡 的 解决方案

    sudo apt-get update sudo apt-get install bcmwl-kernel-source

  6. 「newbee-mall新蜂商城开源啦」GitHub 上最热门的 Spring Boot 项目,我也要做一次靓仔!

    没有一个冬天不可逾越,也没有一个春天不会到来. 介绍一下新蜂商城的近况,同时,新蜂商城 Vue 版本目前也在开发中,在这篇文章里我也向大家公布一下新蜂商城 Vue 版本的开发进度,和大家同步一下,在不 ...

  7. CVE-20117-111882漏洞复现及利用

    背景 工程实践题目: 渗透方向:实验班要求 1.利用已有的漏洞,搭建内网实验环境(WEB漏洞或系统漏洞以近两年内的CVE编号为准,每人一个,先报先得,具体由学习委员负责协调),利用工具进行内网渗透攻击 ...

  8. 图数据库 Nebula Graph TTL 特性

    导读 身处在现在这个大数据时代,我们处理的数据量需以 TB.PB, 甚至 EB 来计算,怎么处理庞大的数据集是从事数据库领域人员的共同问题.解决这个问题的核心在于,数据库中存储的数据是否都是有效的.有 ...

  9. vnpy源码阅读学习(7):串在一起

    串在一起 我们已经分析了UI.MainEngine.EventEngine.然后他们几个是如何发挥作用的呢?我总结了一张图: 我们来具体的看看UI部分是如何跟EventEngine穿插起来的 \exa ...

  10. wr720n v4 折腾笔记(三):网络配置与扩充USB

    0x01 前言 网络配置比较简单,但是USB拓展就麻烦许多了,这里由于overlay的内存分配问题导致软件安装失败,这里找到了一种方法就是直接从uboot刷入南浦月大神的wr720n的openwrt固 ...