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 ...
随机推荐
- html二
超链接 超链接有三种形式: 1.外部链接:链接到外部文件.举例: <a href="new.html">点击进入到新网页</a> a是英语anchor“锚” ...
- springboot mybatis自定义枚举enum转换
原文链接:https://blog.csdn.net/u014527058/article/details/62883573 一.概述 在利用Spring进行Web后台开发时,经常会遇到枚举类型的绑定 ...
- IOS 浏览器上设置overflow: auto 不可滚动
项目中最近遇到一个bug,在ios上出现的问题:原页面是在某一块地方滚动,但是改版后,滚动区域改为最外层元素,最外层包裹了一层class为main的div .main { position: fixe ...
- maven 项目 配置docker镜像生成(dockerfile-maven-plugin)
插件地址:https://github.com/spotify/dockerfile-maven 依github上备注,只要在项目根上录上编写dockerfile,然后引用插件即可 编写Dockerf ...
- sqlmap用法
用法 Usage: python sqlmap.py [options] Options: -h, --help Show basic help message and exit -hh Show a ...
- [JavaScript] New-Agnostic Constructor Pattern
function User (name, password) { var self = this instanceof User ? this : new User(); if (name != nu ...
- Luogu P1471 方差 线段树
那是上上周...也是重构了四遍...后来GG了...今天又拾起,搞了搞终于过了... 好吧就是个线段树,公式懒得推了https://www.cnblogs.com/Jackpei/p/10693561 ...
- hdu-2036求任意多边形面积
改革春风吹满地 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Sub ...
- javaEE 转发 和 重定向
转发 两种方法: 1,request.getRequestDispatcher(getServletContext().getContextPath() + "/path").fo ...
- 在Docker中部署Asp.net core2.1以及修改发布
https://blog.csdn.net/sd7o95o/article/details/80809734 本篇文章主要是如何在Docker容器中运行ASP.NET Core应用程序,以及修改系 ...