tp3.2水印上传文件
《html》
<html lang="en">
<head>
<meta charset="UTF-8">
<title>相册添加</title>
</head>
<body>
<center>
<!--U方法 : {:U('控制器名/方法名')}-->
<form action="{:U('Indexdo/add_do')}" method="post" enctype="multipart/form-data">
<table border="1">
<tr>
<td>相册名称</td>
<td><input type="text" name="photo_name"></td>
</tr>
<tr>
<td>相册简介</td>
<td>
<textarea name="photo_desc" id="" cols="30" rows="10">
</textarea>
</td>
</tr>
<tr>
<td>相册封面</td>
<td><input type="file" name="img"></td>
</tr>
<tr>
<td colspan="2">
<input type="submit" value="创建相册">
</td>
</tr>
</table>
</form>
</center>
</body>
</html>
《控制器》
//添加数据入库
public function add_do(){
$photo = D('Photo');
$data['photo_name'] = I("post.photo_name");
$data['photo_desc'] =I("post.photo_desc");
$file = $_FILES['img'];
$img_info = $this->upload($file);
$img = $this->water($img_info);
$data['photo_img'] = $img;
$data['create_time'] = date("Y-m-d H:i:s",time());
$rest = $photo->add($data);
if($rest){
$this->success('添加成功',U('Indexdo/show'),3);
}else{
$this->error('添加失败');
}
}
//控制器里文件的上传
public function upload(){
$upload = new \Think\Upload();// 实例化上传类
$upload->maxSize = 3145728 ;// 设置附件上传大小
$upload->exts = array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型
$upload->savePath = './Public/Uploads/'; // 设置附件上传目录
$upload->rootPath = './';
// 上传文件
$info = $upload->upload();
if(!$info) {// 上传错误提示错误信息
$this->error($upload->getError());
}else{// 上传成功
return $info;
}
}
//将上面的文件上传方法经过水印方法加工
public function water($img_info){
$img = $img_info['img']['savepath'].$img_info['img']['savename'];
$image = new \Think\Image();
// 在图片右下角添加水印文字 ThinkPHP 并保存为new.jpg
$water_img = $img_info['img']['savepath'].'water_'.$img_info['img']['savename'];
$image->open($img)->text('ThinkPHP','./1.ttf',20,'#000000',\Think\Image::IMAGE_WATER_SOUTHEAST)->save($water_img);
return $water_img;
}
tp3.2水印上传文件的更多相关文章
- TP3.2批量上传文件(图片),解决同名冲突问题
1.html <form action="{:U('Upload/index')}" enctype="multipart/form-data" meth ...
- tp3.2 上传文件及下载文件
公共方法 UploadFile.class.php() // 开始 , , , ,];];,; ;; ::::::;,) {//文件上传失败 //捕获错误代码$this->error($file ...
- 上传文件 file upload 学习笔记
这里我只会说说一些完成 file upload 的基础 API. 很多项目我们需要上传文件. 有简单的 input file, 有需要验证的,有需要压缩的(img),有需要分段的(video),有需要 ...
- PHP开发-上传文件
<?php /****************************************************************************** 参数说明: $max_ ...
- 【.NET】上传文件,生成缩略图
类名:Upload using System; using System.Collections; using System.ComponentModel; using System.Data; us ...
- IE8/9 JQuery.Ajax 上传文件无效
IE8/9 JQuery.Ajax 上传文件有两个限制: 使用 JQuery.Ajax 无法上传文件(因为无法使用 FormData,FormData 是 HTML5 的一个特性,IE8/9 不支持) ...
- 三种上传文件不刷新页面的方法讨论:iframe/FormData/FileReader
发请求有两种方式,一种是用ajax,另一种是用form提交,默认的form提交如果不做处理的话,会使页面重定向.以一个简单的demo做说明: html如下所示,请求的路径action为"up ...
- asp.net mvc 上传文件
转至:http://www.cnblogs.com/fonour/p/ajaxFileUpload.html 0.下载 http://files.cnblogs.com/files/fonour/aj ...
- app端上传文件至服务器后台,web端上传文件存储到服务器
1.android前端发送服务器请求 在spring-mvc.xml 将过滤屏蔽(如果不屏蔽 ,文件流为空) <!-- <bean id="multipartResolver&q ...
随机推荐
- Alpha冲刺(6/10)——2019.4.28
作业描述 课程 软件工程1916|W(福州大学) 团队名称 修!咻咻! 作业要求 项目Alpha冲刺(团队) 团队目标 切实可行的计算机协会维修预约平台 开发工具 Eclipse 团队信息 队员学号 ...
- C语言中结构、联合、枚举的说明
复杂的数据类型 一般的步骤: 1.声明模板 2.定义变量,分配内存空间 3.初始化 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ...
- springmvc怎么重定向
转载大神: https://blog.csdn.net/wabiaozia/article/details/50252661
- thymeleaf总结
thymeleaf 基本功能是将 th:xxx的内容替换html标签的内容 原标签的内容会被替换掉,原内容只是前端用来显示demo的 和freemarker, velocity的重要区别是,它们的自定 ...
- centos7-根据端口号查看所属应用
[root@cent7-zuoys ~]# netstat -lnp | grep 8080 [root@cent7-zuoys ~]# ps 4735
- 读书笔记:编程小白的第一本python入门书
书名:编程小白的第一本python入门书 作者:侯爵 出版社/出处:图灵社区 年份:2016年 封面: 感想: 本书短小精悍,精华部分在于给编程小白打了鸡血的同时输出了一种“高效学习法的思想”. 个人 ...
- Car Flash ECU Programmer From autonumen
Whether you’re a home car owner or an auto mechanic — you can save thousands of dollars on car maint ...
- my.资料_副本_破六欲
http://www.nok2.com/fxjy/816.html 梦幻之家礼包网讲解梦幻2破除心魔 来源:www.nok2.com作者:礼包达人时间:2016-04-01 22:11 最近听到不少小 ...
- 这是通过 Open Live Writer(是个博客编辑器) 发布的
Open Live Writer 是开源的win10上的博客编辑器
- Silverlight TreeView 带 checkbox和图片
前段时间做Silverlight TreeView 控件,但是要带checkbox和图片,在网上到处找相关的例子,效果图如下 xaml代码 <UserControl x:Class=" ...