2016/05/19 thinkphp 3.2.2 文件上传
显示效果: 多文件上传。 这里是两个文件一起上传
上传到文件夹的效果:
①aa为调用Home下common文件夹下的function.php 中的rname方法 实现的
②cc为调用与Home平级文件夹common下的common文件夹下的function.php
以上是放公共方法的地方 程序可以自动调用
③一瓶水.gif 的显示: 在linux操作系统下不会出现乱码 但在windows下会出现乱码
解决办法:找到核心目录 thinkphp下的library下的Upload下的local.class.php 取其83行代码
如下图:原本没有 iconv('utf-8','gb312',$filename) 加上之后就是下面的效果 解决上传文件名显示乱码的问题 文件显示正常 如:一瓶水
代码:
①控制器部分:UploadController.class.php 注意点 上传文件
- empty($_FILES["photo"]) 传来的值用 $_FILES 来接收
- <?php
- namespace Home\Controller;
- use Think\Controller;
- class UploadController extends Controller
- {
- public function Upload(){
- if (empty($_FILES["photo"])) {
- $this->display();
- }
- else
- {
- $config=array(
- 'maxSize' => 3145728,
- 'rootPath'=>'./Public/',
- 'savePath' => 'Uploads',
- //'saveName' => array('uniqid',''),//上传文件保存名称规则,字符串和数组形式 这是数组形式
- 'exts'=>array('jpg','gif','png','jpeg'),
- //'autoSub'=> true,
- //'subName'=> array('date','Ymd'),
- 'saveName'=>'',//上传文件保存名称规则,字符串和数组形式 这是字符串形式 空字符串
- );
- $upload=new \Think\Upload($config);//实例化上传类
- $info=$upload->upload();
- if (!$info) {//上传错误提示错误信息
- $this->error($upload->getError());
- }
- else
- { //上传成功
- //$this->success('上传成功!');
- foreach ($info as $value) {
- echo $value['savepath'].$value['savename'];
- }
- }
- };
- }
- }
- ?>
②模板部分
Upload.html
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>上传下载</title>
- </head>
- <body>
- <form action="__SELF__" enctype="multipart/form-data" method="post">
- <input type="file" name="photo"></input>
- <input type="file" name="photo1"></input>
- <input type="submit" value="上传"></input>
- </form>
- </body>
- </html>
2016/05/19 thinkphp 3.2.2 文件上传的更多相关文章
- THINKPHP源码学习--------文件上传类
TP图片上传类的理解 在做自己项目上传图片的时候一直都有用到TP的上传图片类,所以要进入源码探索一下. 文件目录:./THinkPHP/Library/Think/Upload.class.php n ...
- ThinkPHP 3.2.3 文件上传时间目录问题
上传文件的代码如下 在上传文件的时候会默认生成时间目录, 但是有些时候,并不想生成时间目录,而是储存在我们自己定义的目录下,可以这样做: 只需要添加 $upload->autoSub = fal ...
- Servlet3.0学习总结(三)——基于Servlet3.0的文件上传
在Servlet2.5中,我们要实现文件上传功能时,一般都需要借助第三方开源组件,例如Apache的commons-fileupload组件,在Servlet3.0中提供了对文件上传的原生支持,我们不 ...
- Servlet3.0之八:基于Servlet3.0的文件上传@MultipartConfig
在Servlet2.5中,我们要实现文件上传功能时,一般都需要借助第三方开源组件,例如Apache的commons-fileupload组件,在Servlet3.0中提供了对文件上传的原生支持,我们不 ...
- ThinkPHP3验证码、文件上传、缩略图、分页(自定义工具类、session和cookie)
验证码 TP框架中自带了验证码类 位置:Think/verify.class.php 在LoginController控制器中创建生存验证码的方法 login.html登陆模板中 在LoginCont ...
- Thinkphp 验证码、文件上传
一.验证码 验证码参数 例题:登录时验证下验证码 LoginController.class.php <?php namespace Home\Controller; use Think\Con ...
- ThinkPHP文件上传类
TP框架自带文件上传类使用: 类文件在ThinkPHP/Library/Think/默认在目录下 public function upload(){ $upload = new \Think\Uplo ...
- thinkphp实现文件上传
文件上传详细讲解 http://www.thinkphp.cn/info/194.html 上传根目录不存在问题解决方法 http://www.thinkphp.cn/topic/10779.html
- ThinkPHP 文件上传到阿里云OSS上(干货)
参考:http://www.thinkphp.cn/extend/789.html 1.前往阿里云github下载SDK包:https://github.com/aliyun/aliyun-oss-p ...
随机推荐
- Python数据可视化库-Matplotlib(一)
今天我们来学习一下python的数据可视化库,Matplotlib,是一个Python的2D绘图库 通过这个库,开发者可以仅需要几行代码,便可以生成绘图,直方图,功率图,条形图,错误图,散点图等等 废 ...
- 虚拟机如何设置静态IP
一.本机环境 Mac.VMware Fusion 10, CentOS6.8 二.设置静态IP地址 1.选择网络连接模式,选择NAT模式 注意: 1)必须要选择NAT模式,否则你的虚拟机与主机始终会在 ...
- [第一波模拟\day1\T2]{分班}(divide.cpp)
[题目描述] 小N,小A,小T又大了一岁了. 现在,他们已经是高二年级的学生了.众所周知,高二的小朋友是要进行文理科分班考试的,这样子的话,三个好朋友说不定就会不分在一个班. 于是三个人决定,都考平均 ...
- hdu3376 Matrix Again
最大费用最大流 咋写?取个相反数就可以了-- #include <iostream> #include <cstring> #include <cstdio> #i ...
- 跟初学者学习IbatisNet第三篇
这一章我们主要介绍一下IbatisNet里面的动态sql语句的运用,比如有时候我们想进行模糊查询,参数是动态加入的.或者要实现top n ,order by ,分页等功能的时候,我们就不得不用动态拼接 ...
- intellij idea2016
注册server http://idea.imsxm.com
- maven中的groupId和artifactId到底指的是什么?
具体回答如下: groupid和artifactId被统称为“坐标”是为了保证项目唯一性而提出的,如果你要把你项目弄到maven本地仓库去,你想要找到你的项目就必须根据这两个id去查找. groupI ...
- Go函数学习
package main import ( "fmt" "reflect" "runtime" "math" ) //函 ...
- 搜狗大数据总监、Polarr 联合创始人关于深度学习的分享交流 | 架构师小组交流会
架构师小组交流会是由国内知名公司技术专家参与的技术交流会,每期选择一个时下最热门的技术话题进行实践经验分享.第一期:来自沪江.滴滴.蘑菇街.扇贝架构师的 Docker 实践分享 第二期:来自滴滴.微博 ...
- hdu4135 Co-prime【容斥原理】
Co-prime Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total S ...