TP入门第九天

2018-05-07 17:42:35 浏览数 (1)

1、验证码

TP2.0的使用网上一大堆教程,这里只是简单介绍下,把org目录拷贝到thinkphp目录的lib目录下,然后导入到生成验证码页面即可

TP3.0需要把org文件存放在tp的Extend/Library目录下

代码语言:javascript复制
function yzm()
{
 
import(‘ORG.Util.Image’);
Image::buildImageVerify();
}

具体参数可以参考手册进行深刻了解

2、图片添加水印

代码语言:javascript复制
public function mm(){
import(“ORG.Util.Image”);
$Image = new Image();
// 给1.jpg 图片添加logo水印,注意这里的路径问题,我这里的图片都和入口文件相同文件内
$Image->water(“1.jpg”,”logo.jpg”);
echo “成功”;
}

3、数据分页

代码语言:javascript复制
import(‘ORG.Util.Page’);
$notes=M(‘Notes’);
$total=$notes->count();
$page=new Page($total,2);
$show=$page->show();

进行简单的分页显示

带入查询条件

如果是POST方式查询,如何确保分页之后能够保持原先的查询条件呢,我们可以给分页类传入参数,方法是给分页类的parameter属性赋值:

代码语言:javascript复制
import(“ORG.Util.Page”);// 导入分页类
$mapcount      = $User->where($map)->count();// 查询满足要求的总记录数
$Page       = new Page($count,25);// 实例化分页类 传入总记录数和每页显示的记录数
//分页跳转的时候保证查询条件
foreach($map as $key=>$val) {
$Page->parameter   .=   “$key=”.urlencode($val).”&”;
}
$show       = $Page->show();// 分页显示输出

当然我们也可以自己定义不同的分页样式以及显示信息(具体使用参看手册)

4、文件上传

模板可以这样写

代码语言:javascript复制
<form action="__URL__/upload" method="POST" enctype="multipart/form-data">
文件:<input name=file type=file>
&nbsp;
<input type="submit" value="上传">
</form>

这样需要建立upload函数

代码语言:javascript复制
function upload(){
if(empty($_FILES)){
$this->error("文件不能为空");
}else{
$info=$this->myup();
if(isset($info)){
echo "存入数据库操作";
&nbsp;
}else{
$this->error("上传异常");
}
}
}

这时候需要建立myup<span style="font-family: 宋体;">做为上传的函数</span>

代码语言:javascript复制
private function myup(){
import(‘ORG.Net.UploadFile’);
$upload=new UploadFile();
$upload->maxSize=102400000;//最大文件 以字节为单位
$upload->allowExts=array("jpg","rar","png"); //准许上传的文件后缀
$upload->savePath="./Public/upload/";//文件保存路径
$upload->saveRule=uniqid;    //上传文件的文件名保存规则
$upload->thumb=true;   //是否开启图片文件缩略
$upload->thumbPrefix=’thumb_’;//缩略图文件前缀,默认是thumb_
$upload->thumbMaxWidth="120";//缩略最大宽度
$upload->thumbMaxHeight=’120′;//注意必须宽和高都得有,不然会上传也不会有异常。。
$upload->thumbRemoveOrigin=0;//生成缩略图是否删除原图
if($upload->upload()){
return $info=$upload->getUploadFileInfo();
}else{
$this->error($upload->getErrorMsg());
}
&nbsp;
}

同样,我们批量上传的时候,需要在form表单中讲name改成file[]建议使用这样的。然后我们批量插入数据库(具体实现等遇到之后给大家详解)

0 人点赞