阅读模式:

Thinkphp 3.2.3 CURD

查看:2588  回复:0  类型:  来源:ThinkPHP  标签 thinkphp

        Thinkphp 3.2.3 CURD(增删改查)

会用到的方法:

     M()方法:实例化模型

                    M('数据表名')

     D()方法:实例化模型,并对数据格式进行验证

     I()方法:用于接收form表单请求过来get或post的数据,并对数据进行过滤操作

                   I('get.表单中name参数名','不存在的时候返回的值,可设置0或''[可不填]','过滤方式htmlspecialchars、intval、strip_tags[可不填]')

     add()方法:插入数据

     select()方法:查找所有数据、find()方法:查找一条数据

     delete()方法:删除数据

     save()方法:更新数据

代码实例:

<?php
namespace Admin\Controller;
use Think\Controller;
class PoController extends CommonController{
    public function index(){
        $post = M('po');
        $cate = M('cate')->select();
        $count      = $post->count();// 查询满足要求的总记录数
        $Page       = new ThinkPage($count,30);// 实例化分页类 传入总记录数和每页显示的记录数(25)
        $show       = $Page->show();// 分页显示输出
        // 进行分页数据查询 注意limit方法的参数要使用Page类的属性
        $list = $post->order('id desc')->limit($Page->firstRow.','.$Page->listRows)->select();
        $this->assign('list',$list);// 赋值数据集
        $this->assign('page',$show);// 赋值分页输出
        $this->assign('cate',$cate);
        $this->display(); // 输出模板
    }
    public function add(){
        $post = D('po');
        $cate = M('category')->select();
        if(IS_POST){

            $data['title'] = I('post.title');
            $data['cate_id'] = I('post.cid');
            $data['contents'] = I('post.content',false);
            $data['ip'] = get_client_ip();
            $Ip = new OrgNetIpLocation('UTFWry.dat'); // 实例化类 参数表示IP地址库文件
            $area = $Ip->getlocation(); // 获取某个IP地址所在的位置
            $data['ipfrom'] = $area;
            $data['click'] = 1;
            $data['from'] = I('post.froms');
            $data['publish'] = session('account');
            $data['uid'] = session('account_id');
            $data['addtime'] = date('Y-m-d H:i:s');
            $data['updatetime'] = date('Y-m-d H:i:s');

            if($post->create($data)){
                if($post->add()){
                    $this->success('话题发布成功!',U('index'));
                }else{
                    $this->error('话题发布失败!');
                }
            }else{
                $this->error($post->getError());
            }
            
            return false;
        }
        $this->assign('cate',$cate);
        $this->display();
    }
    public function edit(){
        $post = D('po');
        $cate = M('cate')->select();
        $res = $post->where(array('id'=>I('id')))->find();
        if(IS_POST){
            $data['id'] = I('post.id');
            $data['title'] = I('post.title');
            $data['cate_id'] = I('post.cid');
            $data['keyword'] = I('post.keywords');
            $data['contents'] = I('post.content',false);
            $data['ip'] = get_client_ip();
            $Ip = new OrgNetIpLocation('UTFWry.dat'); // 实例化类 参数表示IP地址库文件
            $area = $Ip->getlocation(); // 获取某个IP地址所在的位置
            $data['ipfrom'] = $area;
            $data['from'] = I('post.froms');
            $data['publish'] = session('account');
            $data['uid'] = session('account_id'); 
            $data['updatetime'] = date('Y-m-d H:i:s');

            if($post->create($data)){
                if($post->save()){
                    $this->success('话题更新成功!',U('index'));
                }else{
                    $this->error('话题更新失败');
                }
            }
            return false;
        }
        $this->assign('cate',$cate);
        $this->assign('post',$res);
        $this->display();
    }

    public function delete(){
        $post = M('po');
        if($post ->delete(I('get.id'))){
            $this->success('话题删除成功!',U('index'));
        }else{
            $this->error('话题删除失败!');
        }
    }

}

来源:http://www.kancloud.cn/thinkphp/thinkphp_quickstart/2140

http://document.thinkphp.cn/manual_3_2.html#create_data


分享到:
0 0

*有问题之处烦请在评论中指出非常感谢!
不是我想要的内容,继续搜索:

扫描二维码手机查看

发布评论:


登录:
  表情:
评论话题
推荐阅读:
网站性能优化-页面静态缓存   阅读:2999爱编程,也爱健康   阅读:1851centos 7 忘记root密码   阅读:2265phpexcel 超简单从excel表格一键导入数据到数据库教程   阅读:7446关于PHP程序员技术职业生涯规划   阅读:214session与cookie的区别   阅读:2212web性能测试工具ab的测试方法   阅读:2571centos 7 修改系统屏幕分辨率   阅读:24363php生成二维码   阅读:2849centos 7 修改系统屏幕分辨率   阅读:24363分享:淘宝技术这十年   阅读:2500php 获取当前前后年、月、星期、日、时分秒的时间   阅读:2954linux php7安装yaf扩展   阅读:3530给php7安装redis扩展库   阅读:3812php 使用 smtp.php 类在线发送邮件功能   阅读:3121linux php7编译安装mongodb扩展   阅读:3659session与cookie的区别   阅读:2212centos 7 设置 nginx-1.11.10 开机启动   阅读:4466TCP的三次握手(建立连接)和四次挥手(关闭连接)   阅读:397php 使用 smtp.php 类在线发送邮件功能   阅读:3121linux php7编译安装mongodb扩展   阅读:3659centos 7 安装 nginx-1.11.10   阅读:4507php中地址引用&的真正理解-变量引用、函数引用、对象引用   阅读:2896php中地址引用&的真正理解-变量引用、函数引用、对象引用   阅读:2896php+redis实现消息队列   阅读:3986php打印三角形   阅读:741web性能测试工具ab的测试方法   阅读:2571php打印九九加法表   阅读:4611php连接redis   阅读:3096php删除一个文件夹内的所有文件夹和文件   阅读:2823centos 7 安装 samba 服务   阅读:3034mongodb设置shell开机启动脚本   阅读:4300用php从1乘到100的值   阅读:3413centos 7.2 添加php7 的 php-fpm 开机启动   阅读:13307javascript点击复制内容   阅读:3034nginx编译安装后对nginx进行平滑升级   阅读:1677PHP 鸟哥:我也曾经是“不适合”编程的人   阅读:4278mysql共享锁和排他锁详解   阅读:3440php打印九九加法表   阅读:4611mysql5.7主从同步中binlog同步模式详解   阅读:242php连接redis   阅读:3096mysql5.7主从同步配置   阅读:167十张GIF让你弄懂递归等概念   阅读:3042php 获取当前前后年、月、星期、日、时分秒的时间   阅读:2954centos 7.2 添加php7 的 php-fpm 开机启动   阅读:13307csv文件一键导入数据到mysql数据库   阅读:3507php 读取和设置redis的键值   阅读:4176php 读取和设置redis的键值   阅读:4176php 使用 smtp.php 类在线发送邮件功能   阅读:3121给网站添加一键新浪微博登录的功能   阅读:3725