PHP基础教程_零基础学习PHP_PHP基础教程_兄弟连PHP教程_文件上传.pptVIP

PHP基础教程_零基础学习PHP_PHP基础教程_兄弟连PHP教程_文件上传.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PHP基础教程_零基础学习PHP_PHP基础教程_兄弟连PHP教程_文件上传

* * * * * * * * * PHP文件上传机制 与文件系统和服务器的交互 文件上传 使用目录函数 与文件系统的交互 使用程序执行函数 与环境变量交互 文件上传 在B/S程序中文件上传已经成为一个常用功能。其目的是客户可以通过浏览器(Browser)将文件上传到服务器(Server)上的指定目录。 PHP中文件上传的基础知识 表单提交 对文件的操作 何为文件上传? 传统上的HTML表单只能提交普通文本内容或数值信息。如: input type = text name=xx input type = password name = xx 这种方法无法实现某些系统功能: 如:带附件的电子邮件等。 为了满足传递文件信息的需要:HTTP协议实现了文件上传机制,从而可以将客户端的文件通过自己的浏览器上传到服务器上指定目录存放。 HTML规范规定上传文件时表单头必须使用 html headtitle文件上传/title/head body form action=todo.php method=post enctype=“multipart/form-data” input type=hidden name= MAX_FILE_SIZE value=100000 上传文件:input type=file name=myfilename 提交:input type=submit value=提交查询 /form /body /html 显示在浏览器上效果如下: POST方法: 表单最常用的功能,向目标页面传递变量,我们在上传文件的时候,会在表单中设置相应的属性,来完成文件的传递 注意几个特征属性: enctype=multipart/form-data 这样服务器就会知道,我们要传递一个文件,这样服务器可以知道上载的文件带有常规的表单信息。 MAX_FILE_SIZE 控制最大的传递文件的大小(字节) ?真的可以控制吗 input type=file name=userfile 设置浏览器浏览按钮效果 MAX_FILE_SIZE的值只是对浏览器的一个建议,实际上可以被简单的攻击,我们不要对浏览器端的限制寄予什么希望,它只能避免君子的错误输入,对于普通的web工程师都会跳过浏览器端的限制。 但是最好还是在表单上使用MAX_FILE_SIZE,因为对于善意的错误我们可以帮助纠正,避免用户花费很长的时间等待大文件上传,传了半天,才发现无法上传。 表单提交以后,数据被发送给action的属性指定的PHP程序,这时表单已经完成了它的任务。 静态表单与程序脚本之间的沟通仅仅通过action属性,因此表单可以在任何地方被伪造,如果您的程序完全相信表单提交的数据,就会被木马屠城 我们在服务器端的php.ini中设置对表单传递的数据进一步判断 file_uploads = On /Off 是否允许文件上传 upload_max_filesize = 2M 上传的文件的最大大小 post_max_size = 8M POST 数据所允许的最大大小 表单传递的数据,文件只是其中的一部分 所以设置时,upload_max_filesize应该小于post_max_size 超级全局数组$_FILES PHP程序中,需要处理的上传数据保存在全局数组中$_FILES(超级全局数组) 保存$_FILES数组中的元素,将HTML表单的type=file标记的名称name=userfile 存放在数组中。 1:存储在$_FILES[userfile][name]中的值就是: 客户端文件系统的文件的名称 2:存储在$_FILES[userfile][type]中的值就是: 客户端传递的文件的类型 超级全局数组$_FILES 3:存储在$_FILES[userfile][size]中的值就是: 文件的字节的大小 4:存储在$_FILES[userfile][tmp_name]中的值就是: 文件被上传后在服务器存储的临时全路径 5:存储在$_FILES[userfile][error]中的值就是: 文件上传的错误代码-php 4.2以后增加的功能 存储在$_FILES[userfile][error]中的值 在$_FILES[userfile][error]中返回的错误代码是在PHP4.2.0版本中引入的。具体如下: 值为0:表示没有发生任何错误。 值为1:表示上载文件的大小超出了约定值。文件大小的最大值是在PHP配置文件中指定的,该指令是:upload_max_filesize。 值为2:表示上载文件大小超出了HTML表单的MAX_FILE_SIZE元素所指定的最大值。 值为3:表示文件只被部分上载。 值为4:表示没有上载任何文

文档评论(0)

qwd513620855 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档