用POST方法上传文件
文件上传分为客户端和服务器端
客户端可以通过form表单进行上传
客户端使用html表单进行上传
enctype = "multipart/form-data"用来指定表单编码数据方式
method = "POST"指明发送数据的方法
<form action = "upload.php" method = "POST" enctype = "multipart/form-data">
<input type = "hidden" name = "MAXN_FILIE_SIZE" value = "100000">
选择文件:<input type = "file" name = "myFile">
<input type = "submit" value = "上传文件">
</form>
最主要的就是type="file"的<input>标签
服务器端
<!--
简单的文件上传的PHP脚本
->
<?php
$allowtype = array("gif","png","jpg");
$size = 1000000;
$path = "./upload"; if($_FILES['myfile']['error'] > 0){
echo "文件上传错误";
switch($_FILES['myfile']['error']){
case 1 :die('上传文件大小超过了PHP配置文件中的约定值');
case 2 :die('上传文件大小超过了浏览器中的约定值');
case 3 :die('文件只被上传部分');
case 4 :die('没有上传的文件');
default :die('其它错误');
}
} $hz = array_pop(explode(".",$_FILES['myfile']['name']));
if(!in_array($hz,$allowtype)){
die("这个后缀是<b>{$hz}</b>不是允许的类型");
} if($_FILES['myfile']['size'] > $size){
die("超过了允许的<b>$size</b>字节大小");
} $filename = date("YmdHis").rand(100,999).".".$hz; if(is_uploaded_file($_FILES['myfile']['tmp_name'])){
if(!move_uploaded_file($_FILES['myfile']['tmp_name'],$path.'/'.$filename)){
die("不能将文件移动到指定目录");
}
}else{
die("上传文件:{$_FILES['myfile']['name']}不是一个合法文件");
} echo "文件{$myfile}上传成功,保存在目录{$path}中,大小为{$_FILES['myfile']['size']}字节";
?>
用POST方法将文件上传时主要运用到的是$_FILES[]全局数组
$_FILES是一个二维数组 $_FILES['myfile']['name'] $_FILES['myfile']['tmp_name'] $_FILES['myfile']['size'] $_FILES['myfile']['error'] $_FILES['myfile']['type']
用到的函数有:is_uploaded_file() move_uploaded_file()
多个文件上传时只需要运用myfile[]数组即可 此时的$_FILES是三维数组
<form action = "upload.php" method = "POST" enctype = "multipart/form-data">
<input type = "hidden" name = "MAXN_FILIE_SIZE" value = "100000">
选择文件1:<input type = "file" name = "myFile[]">
选择文件2:<input type = "file" name = "myFile[]">
选择文件3:<input type = "file" name = "myFile[]">
<input type = "submit" value = "上传文件">
</form>
用POST方法上传文件的更多相关文章
- 使用PUT方法上传文件无法工作原因分析
现象 在Spring Framework中,使用HTTP的PUT方法上传文件时,在服务器端发现Multipart参数为空. 原因 Spring中的StandardServletMultipartRes ...
- jmeter --使用put方法上传文件
今天来记录下put上传文件遇到的坑吧!折腾死我了, 刚开始的时候用的jmeter3.0,各种尝试,发现始终告诉我文件内容为空<actual file content,not shown here ...
- Form action 方法上传文件
<form method="post" id="form1" runat="server" enctype="multipa ...
- java的几种上传文件方法
这时:commonsmultipartresolver 的源码,可以研究一下 http://www.verysource.com/code/2337329_1/commonsmultipartreso ...
- SpringMVC上传文件的三种方式(转)
直接上代码吧,大伙一看便知 这时:commonsmultipartresolver 的源码,可以研究一下 http://www.verysource.com/code/2337329_1/common ...
- PHP socket上传文件图片
最近了解了下下socket方面的东西,想做一个socket上传文件的例子. 在网上搜了搜代码执行后,图片数据传输了一半,图片的下半部分是灰色的.然后就自己仿着搜来的代码和php.net 中socket ...
- SpringMVC上传文件的三种方式
直接上代码吧,大伙一看便知 这时:commonsmultipartresolver 的源码,可以研究一下 http://www.verysource.com/code/2337329_1/common ...
- C# Web Api 上传文件
一. 使用默认方法上传文件: 1.Action: /// <summary> /// 上传文件 使用上传后的默认文件名称 /// 默认名称是BodyPart_XXXXXX,BodyPart ...
- IOS开发教程之put上传文件的服务器的配置及实例分享-备用
感谢大神分享 1,HTTP常见的方法 GET 获取指定资源 POST 2M 向指定资源提交数据进行处理请求,在RESTful风格中用于新增资源 HEAD 获取指定资源头部信息PUT 替换指定资源(不支 ...
随机推荐
- maven的配置文件取不同版本
1. 两个地方需要配置首先是要定义配置源,dev/test/prod对应的配置源需要指定:这是灵活的,可变的:其次要定义配置文件,该配置文件里面的内容采用占位符的方式来编制,在编译打包的过程中要动态根 ...
- 洛谷 4149 [IOI2011]Race——点分治
题目:https://www.luogu.org/problemnew/show/P4149 第一道点分治! 点分治大约是每次找重心,以重心为根做一遍树形dp:然后对于该根的每个孩子,递归下去.递归之 ...
- jquery给select赋值
项目中用到通过ajax请求数据然后给select赋值,由于经常遇到类似的代码,在这里把整个过程记录一下. 首选发出ajax请求如下: <script type="text/javasc ...
- Code:目录
ylbtech-Code:目录 1.返回顶部 1. https://github.com/ 2.返回顶部 1. https://gitee.com 2. 3.返回顶部 4.返回顶部 5.返 ...
- JSP标签和EL表达式
1.jsp标签: sun原生的,直接jsp使用 <jsp:include> -- 实现页面包含,动态包含 <jsp:include page="/index.jsp&quo ...
- ss3
1)执行如下命令,进行安装shadowsocks(命令需要一条条的输入,然后回车,执行完一条,在执行下一条命令),过程中可能会让你选择确认的地方,直接输入"y"回车即可: yum ...
- SVD实例
>> X = rand(5,7) X = 0.9797 0.1365 0.6614 0.5828 0.2259 0.2091 0.5678 0.2714 0.0118 0.2844 0.4 ...
- 值得细细品读的URL资源
Web安全渗透方面的资源指南: 知乎综合问答:https://www.zhihu.com/question/21914899 渗透测试经典演练系统:http://www.freebuf.com/sec ...
- Linux服务器监控工具--Nmon介绍
一.Nmon介绍(详细请参考百度百科) 是一款分析 AIX 和 Linux 性能的免费工具,这个高效的工具可以工作于任何哑屏幕.telnet 会话.甚至拨号线路.另外,它并不会消耗大量的 CPU 周期 ...
- TCP/IP四层体系结构
1.数据链路层 2.网络层 3.传输层 4.应用层 , 其中IP是在第二层网络层中,TCP是在第3层传输层中, Internet体系结构最重要的是TCP/IP协议,是实现互联网络连接性和互操作性 ...