阅读模式:

Thinkphp 3.2.3 CURD

查看:2402  回复: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

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

扫描二维码手机查看

发布评论:


登录:
  表情:
评论话题
推荐阅读:
栈和堆的区别   阅读:2158企业让你去面试,可能不是真的招人   阅读:2997小米手机端商城rem适配原理   阅读:3964纯干货,程序员面试的超实用技巧   阅读:1913shell发送邮件脚本   阅读:1207linux时间戳有趣的情人节秒1234567890   阅读:2398企业让你去面试,可能不是真的招人   阅读:2997centos 7 安装 nginx-1.11.10   阅读:4289nginx编译安装后对nginx进行平滑升级   阅读:1349最简单的Banner轮播淡入淡出效果代码及实现思路(附带源码)   阅读:8181移动端js触摸touch详解(附带案例源码)   阅读:7334mongodb设置shell开机启动脚本   阅读:3850centos7中颁发CA证书并开启web https   阅读:345php 获取当前前后年、月、星期、日、时分秒的时间   阅读:2678php中地址引用&的真正理解-变量引用、函数引用、对象引用   阅读:2582最新centos7 搭建LNMP环境(centos7.2+php7+mysql5.7+nginx1.11+redis3.2)   阅读:6013web性能测试工具ab的测试方法   阅读:2391php中地址引用&的真正理解-变量引用、函数引用、对象引用   阅读:2582php打印三角形   阅读:250mysql5.7开启sql日志的配置   阅读:3480简单的DOS攻击之死亡之ping详解   阅读:19791php打印九九加法表   阅读:3942分享:淘宝技术这十年   阅读:2272程序员找工作三要素(必看)   阅读:2514霍金24岁博士毕业论文在线预览   阅读:2331mysql共享锁和排他锁详解   阅读:3107php 使用 smtp.php 类在线发送邮件功能   阅读:2853一键分享到QQ空间、QQ好友、新浪微博、微信代码   阅读:19864javascript对cookie操作详细代码函数   阅读:2381shell脚本统计当前服务器并发连接数   阅读:3119最新centos7 搭建LNMP环境(centos7.2+php7+mysql5.7+nginx1.11+redis3.2)   阅读:6013javascript点击复制内容   阅读:2744最简单的Banner轮播左右切换效果代码及实现思路(附带源码)   阅读:17446session与cookie的区别   阅读:2091用php从1乘到100的值   阅读:3135霍金24岁博士毕业论文在线预览   阅读:2331linux rarcrack破解rar、zip和7z压缩包简单密码的工具   阅读:5084比phpexcel还要简单的excel CSV 一键导入数据到数据库   阅读:2437session与cookie的区别   阅读:2091web项目高并发量网站解决方案   阅读:2132php 使用 smtp.php 类在线发送邮件功能   阅读:2853php打印三角形   阅读:250php翻转字符串   阅读:119mongodb设置shell开机启动脚本   阅读:3850php设置cookie为HttpOnly防止XSS攻击   阅读:4944centos 7 添加 redis 3.2.9 开机启动脚本   阅读:4666小米手机端商城rem适配原理   阅读:3964用php从1乘到100的值   阅读:3135mongodb设置shell开机启动脚本   阅读:3850php冒泡排序法   阅读:3871