- 浏览: 354093 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (238)
- j2ee (22)
- mysql (14)
- hibernate (2)
- struts (3)
- spring (7)
- php (28)
- cakephp (12)
- pattern (0)
- 数据结构 (0)
- python (17)
- redis (1)
- sql (2)
- ibatis (1)
- jquery (3)
- 测试 (3)
- linux (37)
- solr (3)
- oracle (5)
- jira (5)
- 版本控制 (3)
- xp (1)
- IDE (3)
- apache (4)
- hadoop (2)
- freemarker (2)
- maven (5)
- 项目管理 (2)
- UML (1)
- Django (6)
- 正则 (1)
- Scrapy (1)
- 文档管理 (3)
- 项目集成 (8)
- MQ (3)
- 架构 (1)
- HTML (1)
- IT (1)
- 云 (0)
- 应用服务器 (4)
- win 7 (1)
- thrift (1)
- 学习 (3)
- OpenStack (3)
- sqlserver (1)
- javascript (1)
- zabbix (3)
- IOS (1)
- rabbitmq (1)
- springcloud (2)
最新评论
-
xushenkun4:
至今仍然有这个bug,0.9.1无法传输中文utf8。
thrift使用出现诡异问题 -
feiniao2029:
[i][/i][u][/u]引用
spring 配置init方法 -
wt811004:
非常感谢朋友慷慨指导
dotproject项目管理工具使用 -
hackpro:
这将是一个经典,就像大话西游...
javaeye怀旧 -
raymond2006k:
个人更偏好 Velocity。我觉得还有个对比点,就是编程方式 ...
jsp freemarker velocity 比较
通过 PHP,可以把文件上传到服务器。
创建一个文件上传表单
允许用户从表单上传文件是非常有用的。
请看下面这个供上传文件的 HTML 表单:
请留意如下有关此表单的信息:
<form> 标签的 enctype 属性规定了在提交表单时要使用哪种内容类型。在表单需要二进制数据时,比如文件内容,请使用 "multipart/form-data"。
<input> 标签的 type="file" 属性规定了应该把输入作为文件来处理。举例来说,当在浏览器中预览时,会看到输入框旁边有一个浏览按钮。
注释:允许用户上传文件是一个巨大的安全风险。请仅仅允许可信的用户执行文件上传操作。
创建上传脚本
"upload_file.php" 文件含有供上传文件的代码:
通过使用 PHP 的全局数组 $_FILES,你可以从客户计算机向远程服务器上传文件。
第一个参数是表单的 input name,第二个下标可以是 "name", "type", "size", "tmp_name" 或 "error"。就像这样:
* $_FILES["file"]["name"] - 被上传文件的名称
* $_FILES["file"]["type"] - 被上传文件的类型
* $_FILES["file"]["size"] - 被上传文件的大小,以字节计
* $_FILES["file"]["tmp_name"] - 存储在服务器的文件的临时副本的名称
* $_FILES["file"]["error"] - 由文件上传导致的错误代码
这是一种非常简单文件上传方式。基于安全方面的考虑,您应当增加有关什么用户有权上传文件的限制。
上传限制
在这个脚本中,我们增加了对文件上传的限制。用户只能上传 .gif 或 .jpeg 文件,文件大小必须小于 20 kb:
注释:对于 IE,识别 jpg 文件的类型必须是 pjpeg,对于 FireFox,必须是 jpeg。
保存被上传的文件
上面的例子在服务器的 PHP 临时文件夹创建了一个被上传文件的临时副本。
这个临时的复制文件会在脚本结束时消失。要保存被上传的文件,我们需要把它拷贝到另外的位置:
上面的脚本检测了是否已存在此文件,如果不存在,则把文件拷贝到指定的文件夹。
注释:这个例子把文件保存到了名为 "upload" 的新文件夹。
摘录:http://www.w3school.com.cn/php/php_file_upload.asp
创建一个文件上传表单
允许用户从表单上传文件是非常有用的。
请看下面这个供上传文件的 HTML 表单:
<html> <body> <form action="upload_file.php" method="post" enctype="multipart/form-data"> <label for="file">Filename:</label> <input type="file" name="file" id="file" /> <br /> <input type="submit" name="submit" value="Submit" /> </form> </body> </html>
请留意如下有关此表单的信息:
<form> 标签的 enctype 属性规定了在提交表单时要使用哪种内容类型。在表单需要二进制数据时,比如文件内容,请使用 "multipart/form-data"。
<input> 标签的 type="file" 属性规定了应该把输入作为文件来处理。举例来说,当在浏览器中预览时,会看到输入框旁边有一个浏览按钮。
注释:允许用户上传文件是一个巨大的安全风险。请仅仅允许可信的用户执行文件上传操作。
创建上传脚本
"upload_file.php" 文件含有供上传文件的代码:
<?php if ($_FILES["file"]["error"] > 0) { echo "Error: " . $_FILES["file"]["error"] . "<br />"; } else { echo "Upload: " . $_FILES["file"]["name"] . "<br />"; echo "Type: " . $_FILES["file"]["type"] . "<br />"; echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />"; echo "Stored in: " . $_FILES["file"]["tmp_name"]; } ?>
通过使用 PHP 的全局数组 $_FILES,你可以从客户计算机向远程服务器上传文件。
第一个参数是表单的 input name,第二个下标可以是 "name", "type", "size", "tmp_name" 或 "error"。就像这样:
* $_FILES["file"]["name"] - 被上传文件的名称
* $_FILES["file"]["type"] - 被上传文件的类型
* $_FILES["file"]["size"] - 被上传文件的大小,以字节计
* $_FILES["file"]["tmp_name"] - 存储在服务器的文件的临时副本的名称
* $_FILES["file"]["error"] - 由文件上传导致的错误代码
这是一种非常简单文件上传方式。基于安全方面的考虑,您应当增加有关什么用户有权上传文件的限制。
上传限制
在这个脚本中,我们增加了对文件上传的限制。用户只能上传 .gif 或 .jpeg 文件,文件大小必须小于 20 kb:
<?php if ((($_FILES["file"]["type"] == "image/gif") || ($_FILES["file"]["type"] == "image/jpeg") || ($_FILES["file"]["type"] == "image/pjpeg")) && ($_FILES["file"]["size"] < 20000)) { if ($_FILES["file"]["error"] > 0) { echo "Error: " . $_FILES["file"]["error"] . "<br />"; } else { echo "Upload: " . $_FILES["file"]["name"] . "<br />"; echo "Type: " . $_FILES["file"]["type"] . "<br />"; echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />"; echo "Stored in: " . $_FILES["file"]["tmp_name"]; } } else { echo "Invalid file"; } ?>
注释:对于 IE,识别 jpg 文件的类型必须是 pjpeg,对于 FireFox,必须是 jpeg。
保存被上传的文件
上面的例子在服务器的 PHP 临时文件夹创建了一个被上传文件的临时副本。
这个临时的复制文件会在脚本结束时消失。要保存被上传的文件,我们需要把它拷贝到另外的位置:
<?php if ((($_FILES["file"]["type"] == "image/gif") || ($_FILES["file"]["type"] == "image/jpeg") || ($_FILES["file"]["type"] == "image/pjpeg")) && ($_FILES["file"]["size"] < 20000)) { if ($_FILES["file"]["error"] > 0) { echo "Return Code: " . $_FILES["file"]["error"] . "<br />"; } else { echo "Upload: " . $_FILES["file"]["name"] . "<br />"; echo "Type: " . $_FILES["file"]["type"] . "<br />"; echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />"; echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />"; if (file_exists("upload/" . $_FILES["file"]["name"])) { echo $_FILES["file"]["name"] . " already exists. "; } else { move_uploaded_file($_FILES["file"]["tmp_name"], "upload/" . $_FILES["file"]["name"]); echo "Stored in: " . "upload/" . $_FILES["file"]["name"]; } } } else { echo "Invalid file"; } ?>
上面的脚本检测了是否已存在此文件,如果不存在,则把文件拷贝到指定的文件夹。
注释:这个例子把文件保存到了名为 "upload" 的新文件夹。
摘录:http://www.w3school.com.cn/php/php_file_upload.asp
发表评论
-
MAC 安装php+nginx支持oci8等
2015-07-15 10:41 14731. 安装 php brew install php55 ... -
浏览器自动识别编码问题
2012-06-27 17:03 860由于web应用页面编码使用的gbk,但web服务器php的编码 ... -
PHP PACK UNPACK用法
2011-01-25 10:02 1583Pack 与unpack使用说明: ... -
百万级PHP网站架构方案
2010-11-04 18:09 1393在了解过世界最大的PHP ... -
PHP unzip 解压文件
2010-11-03 14:19 9491.unzip <?php $zip ... -
Php防止重复提交问题总结
2010-10-28 14:46 2571用户提交表单时可能因为网速的原因,或者网页被恶意刷新,致使同一 ... -
借用Google API 写一个查看天气预报的类
2010-10-28 13:09 995<? //- Describe: //- Autho ... -
php当前日期的加减操作
2010-10-26 09:29 1956<?php echo "Today:" ... -
PHP 的命令行模式
2010-09-17 10:31 1241PHP 的命令行模式 从版本 4.3.0 开始,PHP 提供 ... -
php soap 错误处理(精简版)
2010-09-17 10:27 19711.使用soap $client = &qu ... -
php soap client 链接问题
2010-09-16 16:04 23371.说明 php 调用jira的soap接口代码: ... -
Handling data in a PHP JSON Object
2010-09-08 14:16 1147Trends data from Twitter Search ... -
php 和 js 保留2位小数
2010-08-24 10:25 27921.php保留两位小数例子 四舍五入 A.nu ... -
zlib 文件操作
2010-08-23 13:44 991<?php //Extracting the co ... -
php pathinfo()函数用法详解
2010-08-23 12:59 1205摘要: php pathinfo()函数用法详解,pathin ... -
Date and Time in PHP
2010-08-18 13:39 856Displaying the current date and ... -
Php学习《五》 ------ 基本知识摘录
2010-08-17 15:31 9531.php中文字符串长度及定长截取问题 使用str_len( ... -
Php学习《三》 ------ 文件处理
2010-08-03 17:16 792fopen() 函数用于在 PHP 中 ... -
Php学习《二》 ------循环
2010-08-03 17:09 800循环 在您编写代码时,您经常需要让相同的代码块运行很多次。您 ... -
Php学习《一》 ------数组
2010-08-03 16:58 8051.数组分类 a.带值 ...
相关推荐
例如,"upload"文件夹可能包含了关于文件上传的示例代码,这是Web开发中常见的功能。通过这些案例,学习者可以了解如何处理用户上传的文件,验证其格式和大小,以及将文件存储到服务器的特定位置。 "版本更新日志....
在PHP中,文件上传和下载是常见的Web应用功能,用于处理用户上传的文件或提供文件供用户下载。本文将深入探讨PHP文件上传的配置、PHP如何获取上传文件信息以及配置文件的相关设置。 ### 1. 文件上传配置 PHP的文件...
在PHP编程领域,文件上传和下载是常见的功能需求,尤其对于Web应用程序来说。这个压缩包提供的"php 20个实例文件简单上传下载源码"集合了20个不同的示例,涵盖了PHP文件操作的基本原理和实践技巧。下面将详细阐述...
在PHP开发中,多文件上传是一项常见的需求,特别是在构建用户交互性强、数据交换频繁的Web应用时。"php多文件上传类.zip" 提供了一个专为处理这种需求设计的类库,它允许用户同时上传多个文件,提高了工作效率,简化...
文件上传-图片Webshell上传 ...在Web安全训练营课程中,我们将深入探讨文件上传和文件包含漏洞的安全隐患,并学习如何防止这些漏洞的出现。欢迎关注我们的课程,学习Web安全知识,提高自己的安全意识。
标题 "ng-file-upload文件上传" 指的是一个使用AngularJS框架实现的文件上传功能,主要依赖于名为“ng-file-upload”的插件。这个插件是AngularJS社区中广泛使用的,它提供了丰富的功能,如多文件选择、进度条显示、...
在IT行业中,PHP是一种广泛使用的服务器端脚本语言,尤其在...在压缩包文件列表中提到的“php文件上传系统”很可能包含了完整的源代码和相关资源,你可以进一步研究学习如何将这些组件整合成一个完整的文件上传系统。
**PHP学习文档概述** PHP(Hypertext Preprocessor,超文本预处理器)是一种广泛使用的开源脚本语言,尤其适用于Web开发,可以嵌入到HTML中使用。PHP的主要目标是使服务器端的网页制作更容易,它提供了丰富的功能,...
在PHP开发中,文件上传是一项常见的功能,尤其在构建用户交互性强的Web应用时更为重要。本实例将探讨如何在PHP环境中实现...通过学习和实践这两个文件,我们可以更有效地在自己的项目中实现安全、可靠的文件上传功能。
文件上传-绕过黑名单验证(路径拼接绕过) 在 Web 应用程序中,文件上传是非常常见...在这节课程中,我们学习了文件上传-绕过黑名单验证(路径拼接绕过),了解了黑名单验证的原理和缺陷,掌握了攻击技术和防御方法。
"upload-labs"靶场是一个专为学习和实践文件上传漏洞设计的平台,它提供了21个关卡,从基础到高级,帮助新手逐步提升对这类漏洞的理解和应对能力。 ### 一、文件上传漏洞概述 文件上传漏洞通常发生在Web应用程序中...
在现代Web开发中,异步文件上传是一种常见的需求,它能提供更好的用户体验,因为用户可以在不刷新页面的情况下发送数据。本案例重点讲解如何利用...通过学习和实践,开发者可以构建出更加高效、安全的文件上传系统。
通过查看和学习这些示例,你可以了解如何在AngularJS应用中集成文件上传功能,包括如何配置指令、绑定事件、设置参数等。 在实际应用中,你需要在你的AngularJS模块中注入`ngFileUpload`服务,然后就可以在控制器、...
总的来说,梦想网络提供的PHP单文件上传程序是一个实用的小工具,它展示了如何在PHP环境中处理文件上传,同时也为开发者提供了进一步学习和改进的基础。通过深入理解这个程序的工作原理,我们可以更好地掌握PHP的...
以上是对PHP入门学习的初步介绍,随着深入学习,你将掌握更多高级特性,如会话管理、Cookie、文件上传、邮件发送等。实践是最好的老师,尝试编写简单的PHP脚本并运行,你会发现PHP的无穷魅力。祝你在PHP学习道路上...
"upload-labs-master【文件上传靶场】" 是一个针对文件上传功能安全性的测试平台,主要目的是帮助开发者、安全人员以及爱好者检验和学习文件上传漏洞的防范措施。在这个靶场中,你可以模拟不同的攻击手段,了解如何...
- 文件上传:PHP提供`move_uploaded_file()`函数用于处理用户上传的文件,确保安全性和有效性。 - 文件下载:使用`readfile()`或`file_get_contents()`函数读取文件内容,并设置HTTP头信息触发浏览器下载。 - 文件...
在PHP中,文件上传是网站开发中常见的功能之一,它允许用户从本地计算机上传文件到服务器。...通过对这些知识点的学习和实践,开发者可以创建出安全、稳定的文件上传功能,满足网站或应用程序的需求。
在文件管理器中,表单常用于文件上传、搜索、删除等操作。 8. **错误处理和日志记录**:良好的错误处理和日志记录机制对于调试和问题排查至关重要。PHP提供`error_reporting()`和`error_log()`等函数来处理错误和...