概要

1.FORM表现enctype属性

2.$_FILES系统函数

3.move_uploaded_file函数

4.is_uploaded_file函数

1.FORM标签的enctype属性

只有使用了multipart/form-date才能完整的文件数据传递。

也就是设置表单的MIME编码

<form enctype=”multipart/form-data method=”post” name=”upform”></form>

input标签type属性中的"file”

<input name=”upfile” type=”file”>

2.$_FILE[‘myfile’][‘name’] 客户端文件的原名称

$_FILE[‘myfile’]['type']

$_FILE[‘myfile’]['size']

$_FILE[‘myfile’][‘tmp_name’]

$_FILE[‘myfile’][‘error’]该文件上传相关的错误代码

0:文件上传成功

1:超过了文件大小php.ini中。

2.超过文件大小,MAX_FILE_SIZE选项指定的值。

3.文件只有部分被上传

4.没有文件被上传

5.上传文件大小为0.

3.move_uploaded_file函数

上传后移动文件到目标位置的函数

move_uploaded_file(临时文件,目标位置和文件名);

4.is_uploaded_file函数

判断上传MIME类型的文件函数

move_uploaded_file(MIME);

<?php
if(is_uploaded_file($_FILES['upfile']['tmp_name'])){
$upfile=$_FILES["upfile"];
$name = $upfile["name"];
$type = $upfile["type"];
$size = $upfile["sizes"];
$tmp_name = $upfile["tmp_name"];
$error = $upfile["error"];

//echo $name;
//echo $type;
//echo $type;
//echo $size;
//echo $tmp_name;
//echo $error;

switch($type)
{
case 'image/pjpeg' :$ok=1;
break;
case 'image/jpeg' :$ok=1;
break;
case 'image/png' :$ok=1;
break;
}
}

if($ok && $error == '0'){
move_uploaded_file($tmp_name,'upfile_tmp/'.$name);
echo "上传成功!";
}

?>

<form action="" enctype="multipart/form-data" method="post" name="upform">上传文件
<input name="upfile" type="file"></input>
<input type="submit" value="上传"></input></br>
</form>

PHP上传原理及应用的更多相关文章

  1. Spring Boot 文件上传原理

    首先我们要知道什么是Spring Boot,这里简单说一下,Spring Boot可以看作是一个框架中的框架--->集成了各种框架,像security.jpa.data.cloud等等,它无须关 ...

  2. php文件上传原理详解(含源码)

    1.文件上传原理 将客户端的文件上传到服务器,再将服务器的临时文件上传到指定目录 2.客户端配置 提交表单 表单的发送方式为post 添加enctype="multipart/form-da ...

  3. 补习系列(11)-springboot 文件上传原理

    目录 一.文件上传原理 二.springboot 文件机制 临时文件 定制配置 三.示例代码 A. 单文件上传 B. 多文件上传 C. 文件上传异常 D. Bean 配置 四.文件下载 小结 一.文件 ...

  4. PHP上传原理及操作实现

    关于PHP上传文件的函数类库,网上有许多封装很完善,大家直接拿来用就可以. 本文章只是说下关于上传原理和简单的上传操作,老鸟就无视了哈^_^~ 还有一些安全性判断比如:服务端限制能接收图片类型的文件, ...

  5. Java Web文件上传原理分析(不借助开源fileupload上传jar包)

    Java Web文件上传原理分析(不借助开源fileupload上传jar包) 博客分类: Java Web   最近在面试IBM时,面试官突然问到:如果让你自己实现一个文件上传,你的代码要如何写,不 ...

  6. HTTP文件上传原理

    前言 对于这块知识点,我一直都是模糊的,不是非常清楚的.在平时的工作中,遇到上传的问题,也没有深入的去研究过,也都是直接用别人封装好的类来完成自己的工作.某一天,看了本书,说到这个知识点,一脸茫然,觉 ...

  7. Struts2单文件上传原理及示例

    一.文件上传的原理 表单元素的enctype属性指定的是表单数据的编码方式,该属性有3个值: 1.application/x-www-form-urlencoded:这是默认编码方式,它只处理表单域里 ...

  8. FormData兼容IE10 360及DWR的异步上传原理

    摘自:https://github.com/henryluki/FormData/blob/master/formdata.js if(!window.FormData) { (function(se ...

  9. 常见的文件上传方法有哪些?Ajax文件上传原理是什么?

    Ajaxfileupload,Ajaxupload,JqueryUploadify无刷新式的文件上传,在一个页面里嵌入一个Iframe,然后在Iframe使用原生的Post表单提交.

  10. Openstack的镜像上传原理

    openstack的horizon的上传镜像流程 通过html的form表单上传文件 先上传到horizon指定的临时目录,存储起来 通过glance-api请求接口 实际上glance-api也是提 ...

随机推荐

  1. 在DJANGO的类视图中实现登陆要求和权限保护

    以前接触的是基于函数的保护,网上材料比较多. 但基于类视图的很少. 补上! Decorating class-based views 装饰类视图 对于类视图的扩展并不局限于使用mixin.你也可以使用 ...

  2. linux里的php使用phpize拓展各种功能(curl,zip,gd等等)

    这里的实验以拓展zip功能为实例,成功使用zip功能需要如下步骤: 1.下载zip拓展包,并解压,并进入zip文件夹 tar -zxvf zip.tar.gz // 解压 cd zip //进入文件夹 ...

  3. _CrtSetBreakAlloc简单内存泄漏检测方法,解决Detected memory leaks!问题

    我的环境是: XP SP2 . VS2003 最近在一个项目中,程序退出后都出现内存泄漏: Detected memory leaks! Dumping objects -> {98500} n ...

  4. xmlns:android作用以及自定义布局属性

    要定制Android layout 中的 attributes关键是要明白android中命名空间定义如: xmlns:android="http://schemas.android.com ...

  5. Java FutureTask理解

    尊敬原创作者,转载请注明出处: http://blog.csdn.net/gemmem/article/details/8956703 FutureTask是为了弥补Thread的不足而设计的,它可以 ...

  6. Robotium solo.goBack();不起作用,解决方案

    今天碰到用solo.goBack();点击手机的返回按键五次有四次起总用.查了半天后发现以下一种替代方法: solo.sendKey(KeyEvent.KEYCODE_BACK); robotium下 ...

  7. IE的表头固定/表头不动(使用expression)

    本文主要介绍在IE浏览器中,实现表头固定的一种方法.这种方法使用到了 IE 浏览器特有的 expression 方法. 表头固定DEMO1 主要代码: <style type="tex ...

  8. [ReadingNotes] Search the links, static final in the java

    [ReadingNotes] Search the links, static final in the java */--> pre { background-color: #2f4f4f;l ...

  9. java 判断是不是检查性异常

    /** * Return whether the given throwable is a checked exception: * that is, neither a RuntimeExcepti ...

  10. system2之:4-LVM逻辑卷管理

    LVM有扩容功能,无容错功能 物理卷: [root@localhost ~]# pvscan   PV /dev/sda2   VG VolGroup   lvm2 [19.51 GiB / 0    ...