php 实现接收客户端上传的图片

今天,遇到一个服务端接收客户端上传图片的需求,经过学习。我写了个简单的demo

以备下次学习。

首先服务器接收的发送图片的请求一定要是post请求,而且请求一定要加上 enctype="multipart/form-data" 缺一不可

下面是例子,写个简单的浏览器端的:

<html>
<head>
<title> Upload file example. </title>
</head>
<body>
<form method="post" action="recpic.php" enctype="multipart/form-data">
     <table border=0 cellspacing=0 cellpadding=0 align=center width="100%">
      <tr>
        <td width=55 height=20 align="center"><input type="hidden" name="MAX_FILE_SIZE" value="2000000">文件: </TD>
        <td height="16">
        <input name="file" type="file" />
        <!--这里指定了上传后所在临时数组的名称-->
        <input type="submit" name="submit" value="Submit" />
        </td>
      </tr>
     </table>
     </form>
</body>
</html>
<?php
/**
 * 接收上传的图片
 * 
 * ------------
 * 200 ok
 * 401 Error method
 * 500 Internal error
 * ------------
 */
require_once("../inc/connect_db.php");
require_once("../response.php");
header('Access-Control-Allow-Origin: *');   // 解决前段javascript跨域请求

//print_r($_FILES);

$filename = $_FILES['file']['name'];
$tmp_name = $_FILES['file']['tmp_name'];

//将服务器上的临时文件移动到指定目录下

//使用该方法move_uploaded_file($tmp_name , $destination)

move_uploaded_file($tmp_name , "../files/".$filename);

echo $filename;
exit();

上文有注释不赘述,这里还搜集了一些关于上传文件$_FILES()的重要方法:

$_FILES['myFile']['name'] 显示客户端文件的原名称。
$_FILES['myFile']['type'] 文件的 MIME 类型,例如"image/gif"。
$_FILES['myFile']['size'] 已上传文件的大小,单位为字节。
$_FILES['myFile']['tmp_name'] 储存的临时文件名,一般是系统默认。
$_FILES['myFile']['error'] 该文件上传相关的错误代码。以下为不同代码代表的意思:
0; 文件上传成功。
1; 超过了文件大小php.ini中即系统设定的大小。
2; 超过了文件大小MAX_FILE_SIZE 选项指定的值。
3; 文件只有部分被上传。
4; 没有文件被上传。
5; 上传文件大小为0。

  

 

转载于:https://www.cnblogs.com/wobeinianqing/p/5475335.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值