当前课程知识点:PHP程序设计 >  PHP文件和图像技术 >  文件的上传和下载 >  文件上传2

返回《PHP程序设计》慕课在线视频课程列表

文件上传2在线视频

文件上传2

下一节:文件上传3

返回《PHP程序设计》慕课在线视频列表

文件上传2课程教案、知识点、字幕

我们来看一下PPT这个概念

其实刚才咱们已经做了一部分了

对吧

那么文件上传

其实就是一个文件复制

需要通过浏览器端通过http协议

将文件上传到服务器端的文件夹

再将其移动到指定的目录里面去

所以这是两个部分

一个是客户端的表单设置

一个是服务器端的文件操作

那么刚刚咱们做的就是客户端的表单设置

客户端表单设置提交方式必须是post

而且要添加一个上传属性

刚刚让同学们都修改了对吧

那么还有就是我们第一个input标签

一般设定为隐藏

通过value值来指定

允许上传的文件的最大尺寸

那么第二个类型就是一个file

那么我们可以显示一个文件的输入框

并且提供这个浏览按钮用于选择文件对吧

你把input这个标签的类型改成file

那么自动的那个地方就全出来了

对吧全出来了

那么接着我们肯定是要做

服务器端的文件操作了

那么通过这个上传表单选择一个文件

并且提交之后请注意

PHP会自动生成一个$_FILES的二维数组

这个东西是不是长得有点眼熟啊

咱们在之前讲很多题目的时候都用过什么

$post对不对

那么在文件这个地方

它给你一个很好用的东西就是$_FILES

这样子的二维数组

这个数组保存了上传文件的信息

那么这个数组里面

你肯定是要写那个上传的文件名啊

刚刚同学们是不是在

input file那个地方我专门提醒了

name这个地方咱们要自己写个名对不对

写这个userfile这样子的一个名字

那么你的$FILES中括号里面的第一个

就用的是用userfile

对吧就是你的这个名字是你选择的

你写的这个文件名

那么在这个文件名里面

我们可以包含很多内容

第一个中括号里面就是我们的文件

对吧userfile

那么第二个中括号里面name

那么我们就是上传文件的名称对吧

这就把名称取出来了

类型对吧

还有大小

然后还有一个存储在服务器文件的临时名称

还有一个导致文件上传错误的代码

那么由文件上传导致的错误代码重要吗

重要非常重要

我不知道同学们有没有上过一些

不是特别大或者不是特别专业的那种网站

你上去了之后

然后呢

点一个什么东西

它给你提示你做的不对

但是呢

它只告诉你

你做的不对

它不告诉你你到底哪做错了

你不知道怎么修改

对不对

是文件大小太大了

还是要变小

还是我字符长了还是怎么样

不知道

它不提示

它只告诉你错了

对吧

我之前是上过那种网站的

让人非常的愤怒对吧

所以呢我们的这个由文件上传导致的错误代码

整个是有一系列的内容的

你看这个代码可以是谁

可以是0123467

没有5对吧

那么0是什么的

0是一切正常

也就是0是正确的

那么大于0的这些数全是有问题的

比如说这个1是超过的是php.ini里面

也就是PHP的配置文件里面

那么限制的一个值

那么2就是我们刚才设置的

那个表单里面的一个选项值

3就是只有一部分上传了

4就是没有文件被上传

6就是找不到临时文件夹

刚才说文件上传要放到

我们服务器端的一个临时文件夹里面去

然后7就是彻底的一个写入失败

对吧写入失败

你要给用户一定的提示

让用户知道

我应该怎么改

然后能够成功

你要不给他提示了

我告诉他错

那是不合适的

所以呢

在我们的文件上传

伏对吧文件操作这个部分里面

我们很大一个部分对吧是在写什么呢

是在写错误提示

这是我们刚建的表单

就来写我们的这个wjsc2这个PHP了

我就在这个里面写了

好的在这个里面来写

那么我们要写两个部分的内容

第一个部分

第一个部分是要写一个判断

文件上传到临时目录

是否会出错

如果出错的话

则输出错误信息并退出

那么

第二个部分才做的是什么

第二部分才做的是这个上传成功

传临时目录成功

然后将其复制到指定的文件夹中

咱们要做两个部分

第一个部分先判断成功了没

刚才一直在说临时目录

后面会给同学们在再说一下临时目录的

大家要知道我们的文件上传按照操作

它都是放到服务器端的一个临时目录里面

你必须要从临时目录里面

再做一次复制操作

才能到你指定的文件夹是这样做的

所以呢

咱们先判断的是

到这个临时目录有没有问题

刚才我们已经看到了

这个地方是不是有错误代码

那么

当我们的这个二维数组的值大于0的时候

那是不是说明我们上传的内容是有错的

那么如果是这样子的话

我们就来写一个if

写了一个if

if我们括号里面写的是什么

$_FILES

中括号带起来

里面单引号

里面是什么

刚才我们的名字是userfile对吧

注意这个名字写的是谁的名字

写的是这个名字

写的是这个名字

我们自己写的userfile对吧

然后第二个中括号里面

那就是一个固定的error

对吧error

如果它大于0的话

那说明我们的程序是有错的

对不对

说明我们的程序是有错的

那么我们程序有错

还有这么多个错误呢

有这么多个错误呢

是不是有这么多的错误

那么这是一个标准的什么

是不是一个多分支啊

是不是

那么出现这个我们返回它

出现这个返回它

标准的多分支怎么写

是不是switsh对吧

switsh括号里面又放的是谁呢

放的是不是还是它

我把它直接粘贴过来OK

那么这个switsh语句

让我把$给丢了

那么这个Switch语句

我们里面就分头的去写了

分头的去写什么

第一个

我们的case

case是1的时候冒号

对吧我们要怎么样

是不是我们的$massage对吧

msg对吧

$massage等于什么

等于的就是我们的这个

文件超过了这个的限制

把它贴进来

然后我们要干什么带分号

switch这里面一定会写的是什么

case里面一定会写什么

是不是break

一个break加上好了

这就是把第一个写了

那么相对应的我们写234

没有5

然后写67可以吗

和这一样有问题吗

没有问题

大家可以试着写一下

然后下课也可以休息一下

PHP程序设计课程列表:

PHP开篇

-PHP概述

--PHP概述与工作流程

-PHP概述--作业

-开发环境搭建

--开发环境搭建一

--开发环境搭建二

--集成环境的安装

-开发环境搭建--作业

-PHP开篇

PHP语法基础

-PHP语法入门

--语法入门一

--语法入门二

-PHP数据的输出

--数据输出

-PHP数据类型

--数据类型1

--数据类型2

--数据类型3

--数据类型4

--数据类型5

--数据类型6

--PHP语言中的数学运算符

-PHP常量和变量

--常量和变量1

--常量和变量2

--常量和变量3

--常量和变量4

--常量和变量5

--常量

-PHP常量和变量--作业

-PHP的运算符和表达式

--运算符和表达式1

--运算符和表达式2

--运算符和表达式3

--PHP的三元运算符

-PHP语法基础--PHP的运算符和表达式

-PHP语法基础

流程控制语句

-条件判断语句

--条件判断语句1

--条件判断语句2

--条件判断语句3

--条件语句

-循环控制语句

--循环控制语句

--循环语句练习1

--循环语句练习2

-跳转语句和终止语句

--跳转和终止语句

-PHP流程控制

-流程控制

PHP数组

-数组概述和分类

--数组概述和分类

--PHP数组分类

-数组创建、删除和修改

--数组创建、删除和修改1

--数组创建、删除和修改2

--数组创建

-数组遍历

--数组遍历1

--数组遍历2

--数组遍历3

--数组遍历4

--数组遍历5

--foreach

-数组相关函数

--数组相关函数1

--数组相关函数2

--数组相关函数3

--数组相关函数4

--数组相关函数5

--数组相关函数6

--数组函数的练习

-PHP数组--作业

-分页函数的应用

-PHP数组

-数组练习1

-数组练习2

-数组练习3

PHP函数

-函数的定义与调用

--函数定义与调用

-函数参数传递

--函数参数传递1

--函数参数传递2

-自定义函数总结和实验

--自定义函数总结和实验

-常用变量和数学函数

--变量和数学函数库

--数学函数实验

--数学函数

-日期和时间函数

--日期时间函数1

--时间日期函数2

--日期时间函数实验1

--时间日期函数实验2

--时间日期函数实验3

--倒计时

-PHP函数--作业

-PHP函数

字符串函数

-字符串概述

--字符串特点

--字符串处理方式

-常见的字符串函数

--常见字符串函数1

--输出函数1

--输出函数2

--输出函数3

--去除空白函数1

--去除空白函数2

--去除空白函数3

--填补函数和大小写函数

--其他字符串函数1

--其他字符串函数2

--与HTML相关函数1

--与HTML相关函数2

--与HTML相关函数3

--与HTML相关的函数4

--与HTML相关函数5

--字符串函数实验1

--字符串函数实验2

--字符串函数实验3

--字符串函数实验4

--字符串练习1

--字符串练习2

--字符串练习3

--字符串练习4

--字符串练习5

--字符串函数

-正则表达式

--正则表达式基本概念

--兼容正则表达式函数

--正则表达式语法构成

--正则表达式原子讲解1

--正则表达式原子讲解2

--正则表达式原子讲解3

--正则表达式元字符讲解1

--正则表达式元字符讲解2

--正则表达式元字符讲解3

--正则表达式元字符讲解4

--正则表达式元字符讲解5

--正则表达式元字符讲解6

--正则表达式元字符讲解7

--正则表达式中的模式修正符号

--正则表达式练习

--正则表达式

-字符串函数--作业

-PHP字符串函数

PHP文件和图像技术

-文件概述和操作

--文件概述和操作1

--文件概述和操作2

-文件的上传和下载

--文件上传1

--文件上传2

--文件上传3

--文件下载

-图像基础

--图像基础1

--图像基础2

-图像基本操作

--图像基本操作1

--图像基本操作2

--图像基本操作3

--图像基本操作4

--图像基本操作5

--图像基本操作6

--表单与验证码的结合

--图像技术练习1

--图像技术练习2

--图像技术练习3

--缩略图

-PHP文件与图像技术-作业

-PHP文件和图像技术

-变色验证码

会话管理

-会话表单

--会话表单概述1

--会话表单概述2

--会话表单概述3

--超全局变量1

--超全局变量2

--超全局变量3

--表单安全验证

--获取表单数据

--GET和POST区别

-cookie概述

--COOKIE简介

--COOKIE基本使用1

--COOKIE基本使用2

--显示用户上次访问时间

--控制用户登录过期时间1

--控制用户登录过期时间2

--控制用户登录过期时间3

--COOKIE

-session概述

--SESSION概述

--基本应用1

--基本应用2

--综合案例-登录和注销1

--综合案例-登录和注销2

--综合案例-登录和注销3

--综合案例-登录和注销4

--综合案例-登录和注销5

--SESSION和COOKIE区别

-会话管理-作业

-会话管理

PHP操作数据库

-MySQL和PHPMyadmin概述

--MySQL概述1

--MySQL概述2

--PHPMyadmin概述1

--PHPMyadmin概述2

--PHPMyadmin的导入和导出操作

-PHP访问MySQL

--连接服务器

--选择数据库

--浏览表内容1

--浏览表内容2

--MySQLi扩展的应用1

--mysqli扩展应用2-将数据添加到数据库中

--使用mysqli扩展添加数据到数据库中

--使用mysqli扩展删除数据库中数据

--使用mysqli扩展修改数据库中数据

--mysqli扩展应用3-设计删除链接

--MySQLi扩展应用4-完成数据库中数据的删除

--mysqli扩展应用5---编辑链接和编辑页面的设计

--mysqli扩展应用6---编辑数据库中的信息

--mysqli扩展7-条件查询数据表中的数据

-MySQL扩展的使用

--数据表内容显示页面

--添加数据页面1

--添加数据页面2

--删除页面1

--删除页面2

--删除页面3

--数据修改页面1

--数据修改页面2

--数据修改页面3

-PHP操纵数据库

文件上传2笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。