----- 026-upload.php -----

 <!DOCTYPE html>
 <html>
 <head>
     <meta http-equiv="content-type" content="text/html; charset=utf-8">
     <title>上传图片</title>
 </head>
 <body align="left">
 <h2>上传图片</h2>
 <p style="font-size: 16pt">
 <form method="POST"enctype="multipart/form-data" style="border:1px solid; width:400px" >
     上传图片:<input type="file" name='file' id="file"><br/>
     放在这里:<input type="text" name="txt"><br/>
     <input type="submit" name="upload" value="开始上传">
 </form>
 <?php
     foreach ($_POST as $key => $value) {
         echo $key, "=>", $value, "<br/>";
     }
     if(isset($_POST["upload"])){
         echo "就绪了啊!!<br/>";
         echo $_FILES['file']['type'];
         if($_FILES['file']['type'] == "image/pjpeg")
         {
             echo "文件名:", $_FILES['file']['name'], "<br/>";
             echo "文件类型:", $_FILES['file']['type'], "<br/>";
             echo "文件大小:", $_FILES['file']['size'], "<br/>";
             echo "副本名称:", $_FILES['file']['tmp_name'], "<br/>";
             move_uploaded_file($_FILES['file']['tmp_name'], "uploads/".$_FILES['file']['name']);
             echo "文件储存在:",  "uploads/".$_FILES['file']['name'], "<br/>";
             echo "<img src=", "uploads/".$_FILES['file']['name'], " width=300>";

         }
     }
 ?>
 </p>
 </body>
 </html>

----- 027-download.php -----

 <!DOCTYPE html>
 <html>
 <head>
     <meta http-equiv="content-type" content="text/html; charset=utf-8">
     <title>下载文件</title>
 </head>
 <body>
 <fieldset>
 <legend>文件下载</legend>
 <img src="bietaichang.jpg" height="200")/>
 <a href="?action=download">下载文件到本地<br/></a>
 <?php
     $file_name = "bietaichang.jpg";
     $file_dir = "uploads/";
     echo "文件大小:", filesize($file_dir.$file_name), "\n";
     if(isset($_GET["action"]))
     {
         $file = fopen($file_dir.$file_name, "rb");
         header("Content-Type: application/octet-stream");
         header("Accept-Ranges: bytes");
         header("Accept-Length: ".filesize($file_dir.$file_name));
         header("Content-Disposition: attachment; filename=".$file_name);
         echo fread($file, filesize($file_dir.$file_name));
         fclose($file);
         exit;
     }
 ?>
 </fieldset>
 </body>
 </html>

php -- 文件上传下载的更多相关文章

  1. Struts的文件上传下载

    Struts的文件上传下载 1.文件上传 Struts2的文件上传也是使用fileUpload的组件,这个组默认是集合在框架里面的.且是使用拦截器:<interceptor name=" ...

  2. Android okHttp网络请求之文件上传下载

    前言: 前面介绍了基于okHttp的get.post基本使用(http://www.cnblogs.com/whoislcj/p/5526431.html),今天来实现一下基于okHttp的文件上传. ...

  3. Selenium2学习-039-WebUI自动化实战实例-文件上传下载

    通常在 WebUI 自动化测试过程中必然会涉及到文件上传的自动化测试需求,而开发在进行相应的技术实现是不同的,粗略可划分为两类:input标签类(类型为file)和非input标签类(例如:div.a ...

  4. 艺萌文件上传下载及自动更新系统(基于networkComms开源TCP通信框架)

    1.艺萌文件上传下载及自动更新系统,基于Winform技术,采用CS架构,开发工具为vs2010,.net2.0版本(可以很容易升级为3.5和4.0版本)开发语言c#. 本系统主要帮助客户学习基于TC ...

  5. 艺萌TCP文件上传下载及自动更新系统介绍(TCP文件传输)(一)

    艺萌TCP文件上传下载及自动更新系统介绍(TCP文件传输) 该系统基于开源的networkComms通讯框架,此通讯框架以前是收费的,目前已经免费并开元,作者是英国的,开发时间5年多,框架很稳定. 项 ...

  6. ssh框架文件上传下载

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. SpringMVC——返回JSON数据&&文件上传下载

    --------------------------------------------返回JSON数据------------------------------------------------ ...

  8. 【FTP】FTP文件上传下载-支持断点续传

    Jar包:apache的commons-net包: 支持断点续传 支持进度监控(有时出不来,搞不清原因) 相关知识点 编码格式: UTF-8等; 文件类型: 包括[BINARY_FILE_TYPE(常 ...

  9. NetworkComms 文件上传下载和客户端自动升级(非开源)

    演示程序下载地址:http://pan.baidu.com/s/1geVfmcr 淘宝地址:https://shop183793329.taobao.com 联系QQ号:3201175853 许可:购 ...

  10. SpringMVC文件上传下载

    在Spring MVC的基础框架搭建起来后,我们测试了spring mvc中的返回值类型,如果你还没有搭建好springmvc的架构请参考博文->http://www.cnblogs.com/q ...

随机推荐

  1. Camtasia studio8.0破解方法

    Camtasia Studio 8.0 注册说明: 1.安装时使用以下信息注册: 用户名: Honorary User密钥: GCABC-CPCCE-BPMMB-XAJXP-S8F6R 或者是 Nam ...

  2. switch()语句

    语法: switch(expression){ case value:statement break; case value:statement break; case value:statement ...

  3. (01背包 第k优解) Bone Collector II(hdu 2639)

    http://acm.hdu.edu.cn/showproblem.php?pid=2639       Problem Description The title of this problem i ...

  4. noip第28课作业

    分段数列 [问题描述] 对于给定的一个长度为N的正整数数列A[i],现要将其分成连续的若干段,并且每段和不超过M(可以等于M),问最少能将其分成多少段使得满足要求. 输入格式: 输入第1行包含两个正整 ...

  5. bootstrap1.2

      <html>   <head>   <meta charset="UTF-8">   <title></title> ...

  6. Effective C++ 第二版 31)局部对象引用和函数内new的指针 32)推迟变量定义

    条款31 千万不要返回局部对象的引用, 不要返回函数内部用new初始化的指针的引用 第一种情况: 返回局部对象的引用; 局部对象--仅仅是局部的, 在定义时创建, 在离开生命空间时被销毁; 所谓生命空 ...

  7. CentOS7安装BugFree

    1. 安装apache yum install httpd 2. 安装mysql yum install mysql yum install mysql-server 注意: 1)已安装mysql的跳 ...

  8. delphi CopyFileProgressBar 拷贝文件显示进度条

    CopyFileProgressBar(pwidechar(ListBox1.Items.Strings[I]),pwidechar(NewDir+'\'+ExtractFileName(ListBo ...

  9. Shell 命令实现词频统计

    杨贵福老师的方法 cat tr sed sort head 命令的综合使用方式1 $ cat pg11.txt |tr -cs A-Za-z\' '\n' |sed "/'/d"| ...

  10. Flask系列10-- Flask请求上下文源码分析

    总览 一.基础准备. 1. local类 对于一个类,实例化得到它的对象后,如果开启多个线程对它的属性进行操作,会发现数据时不安全的 import time from threading import ...