tp文件上传;org/RBAC.class.php 权限类;think/page,class,php分页类;
一、上传表单:
注意,要使用上传功能 你的表单需要设置 enctype="multipart/form-data"
- <form action="__URL__/upload" enctype="multipart/form-data" method="post" >
- <input type="text" name="name" />
- <input type="file" name="photo" />
- <input type="submit" value="提交" >
- </form>
二、上传操作:
上传类对图片文件的上传安全做了支持,如果企图上传非法的图像文件,系统会提示 非法图像文件
。 为了更好的使用上传功能,建议你的服务器开启finfo
模块支持
- public function upload()
- { $upload = new \Think\Upload();// 实例化上传类
- $upload->maxSize = 3145728 ;// 设置附件上传大小
- $upload->exts = array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型
- $upload->savePath = './Public/Uploads/'; // 设置附件上传目录 // 上传文件
- $info = $upload->upload();
- if(!$info)
- {// 上传错误提示错误信息
- $this->error($upload->getError());
- }
- else
- {// 上传成功
- $this->success('上传成功!');
- }
- }
三上传参数:
- 属性 描述
- maxSize 文件上传的最大文件大小(以字节为单位),0为不限大小
- rootPath 文件上传保存的根路径
- savePath 文件上传的保存路径(相对于根路径)
- saveName 上传文件的保存规则,支持数组和字符串方式定义
- saveExt 上传文件的保存后缀,不设置的话使用原文件后缀
- replace 存在同名文件是否是覆盖,默认为false
- exts 允许上传的文件后缀(留空为不限制),使用数组或者逗号分隔的字符串设置,默认为空
- mimes 允许上传的文件类型(留空为不限制),使用数组或者逗号分隔的字符串设置,默认为空
- autoSub 自动使用子目录保存上传文件 默认为true
- subName 子目录创建方式,采用数组或者字符串方式定义
- hash 是否生成文件的hash编码 默认为true
- callback 检测文件是否存在回调,如果存在返回文件信息数组
四、实例化传入(动态赋值)
- $upload = new \Think\Upload();// 实例化上传类
- $upload->maxSize = 3145728;
- $upload->savePath = './Public/Uploads/';
- $upload->saveName = array('uniqid','');
- $upload->exts = array('jpg', 'gif', 'png', 'jpeg');
- $upload->autoSub = true;
- $upload->subName = array('date','Ymd');
五、例子:
MainController.class.php
- <?php
- namespace Parent\Controller;
- use Think\Controller;
- class MainController extends Controller
- {
- public function fff()
- {
- $this->display();
- }
- public function upload()
- {
- $upload = new \Think\Upload();// 实例化上传类
- $upload->maxSize = 3145728; //设置上传文件的大小
- $upload->rootPath='./Public/'; //相对路径
- $upload->savePath = './Uploads/';//和rootPath配合使用,路径为./Public/Uploads
- $upload->saveName = array('uniqid','');//上传文件的保存规则,支持数组和字符串方式定义
- $upload->exts = array('jpg', 'gif', 'png', 'jpeg');//上传文件的类型
- $upload->autoSub = true;//自动使用子目录保存上传文件 默认为true,
- $upload->subName = array('date','Ymd');//子目录创建方式,采用数组或者字符串方式定义,和autosub配合使用
- $info = $upload->upload();
- if(!$info)
- {// 上传错误提示错误信息
- $this->error($upload->getError());
- }
- else
- {// 上传成功
- $this->success('上传成功!');
- }
- }
- }
fff.html
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>无标题文档</title>
- </head>
- <body>
- <!--__CONTROLLER或者__URL__/upload都可以-->
- <form action="__CONTROLLER__/upload" enctype="multipart/form-data" method="post">
- <div>
- <input type="file" name="file" /><input type="submit" value="提交" />
- </div>
- </form>
- </body>
- </html>
________
tp文件上传;org/RBAC.class.php 权限类;think/page,class,php分页类;的更多相关文章
- TP文件上传
一.单文件上传 <form action="__ACTION__" enctype="multipart/form-data" method=" ...
- 【SFTP】使用Jsch实现Sftp文件上传-支持断点续传和进程监控
JSch是Java Secure Channel的缩写.JSch是一个SSH2的纯Java实现.它允许你连接到一个SSH服务器,并且可以使用端口转发,X11转发,文件传输等,当然你也可以集成它的功能到 ...
- Java Struts文件上传和下载详解
Struts2文件上传 Struts 2框架提供了内置支持处理文件上传使用基于HTML表单的文件上传.上传一个文件时,它通常会被存储在一个临时目录中,他们应该由Action类进行处理或移动到一个永久的 ...
- Android(java)学习笔记214:开源框架的文件上传(只能使用Post)
1.文件上传给服务器,服务器端必然要写代码进行支持,如下: 我们新建一个FileUpload.jsp的动态网页,同时我们上传文件只能使用post方式(不可能将上传数据拼凑在url路径下),上传数据Ap ...
- JavaEE开发之SpringMVC中的自定义消息转换器与文件上传
上篇博客我们详细的聊了<JavaEE开发之SpringMVC中的静态资源映射及服务器推送技术>,本篇博客依然是JavaEE开发中的内容,我们就来聊一下SpringMVC中的自定义消息转发器 ...
- Struts2实现文件上传(一)
Struts2实现文件上传 文件上传成功后结果页面 result.jsp: <%@ page language="java" import="java.util.* ...
- 转:在Struts 2中实现文件上传
(本文转自:http://www.blogjava.net/max/archive/2007/03/21/105124.html) 前一阵子有些朋友在电子邮件中问关于Struts 2实现文件上传的问题 ...
- java框架篇---struts之文件上传和下载
Struts2文件上传 Struts 2框架提供了内置支持处理文件上传使用基于HTML表单的文件上传.上传一个文件时,它通常会被存储在一个临时目录中,他们应该由Action类进行处理或移动到一个永久的 ...
- JFinal文件上传时直接使用getPara()去接受表单的数据接收到的数据一直是null?
解决方案: 在文件上传页面form 标签中使用: enctype="multipart/form-data" 在controller类中先调用getFile系列方法才能使getPa ...
随机推荐
- Webdriver配合Tesseract-OCR 自动识别简单的验证码
验证码: 如下,在进行自动化测试,遇到验证码的问题,一般有两种方式 1.找开发去掉验证码或者使用万能验证码 2.使用OCR自动识别 使用OCR自动化识别,一般识别率不是太高,处理一般简单验证码还是没问 ...
- .NET LINQ查询语法与方法语法
LINQ 查询语法与方法语法 通过使用 C# 3.0 中引入的声明性查询语法,介绍性 LINQ 文档中的多数查询都被编写为查询表达式. 但是,.NET 公共语言运行时 (CLR) 本身并不具 ...
- php随机生成验证码代码
<?php session_start(); //产生一个随机的字符串验证码 $checkcode=""; for ($i=0;$i<4;$i++){ $checkco ...
- 不会JavaScript能混前端么?能拿到高薪么?
不会JavaScript能混前端么?能拿到高薪么? 答案是:很难! 为什么这么说呢,理由很简单 1)有很多企业不注重前端开发,当然也就不会给你高薪了,这样的企业以小企业居多. 他们一般对前端开发的认识 ...
- Android开发之---Activity生命周期
Android开发中,有四大组件:Activity.Service.Content Provider.Broadcast Receiver,可以说,activity的使用是最频繁的了,这里来梳理一下与 ...
- Lattice FPGA 板子 调试笔记
最近在调试LATTICE FPGA 做的视频板子,颇不顺利,所以记录下来作为以后的参考: 1.FPGA的IO口不是所有的都是双向的,有些有特殊作用的是单向的. 在查阅 LatticeECP3-17E ...
- 小议ARM寄存器
ARM微处理器一共有37个32位寄存器,其中包括31个通用寄存器和6个状态寄存器,但是这些寄存处不能同时访问.但是通用寄存器R14 - R0 ,程序计数器PC(即R15),程序状态寄存器都是可以任何时 ...
- 使用SQL Server Analysis Services数据挖掘的关联规则实现商品推荐功能(七)
假如你有一个购物类的网站,那么你如何给你的客户来推荐产品呢?这个功能在很多电商类网站都有,那么,通过SQL Server Analysis Services的数据挖掘功能,你也可以轻松的来构建类似的功 ...
- 前端设计中关于外部js文件加载的速度优化
在一般情况下,许多人都是将<script>写在了<head>标签中,而许多浏览器都是使用单一的线程来加载js文件的,从上往下,从左往右. 若是加载过程出错,那么网页就会阻塞,就 ...
- 在Jenkins中获取GitHub对应Repository的Resource Code
1):Install Jenkins 请看如下链接: https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins 2):Install ...