阅读模式:

Thinkphp 3.2.3 CURD

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

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

扫描二维码手机查看

发布评论:


登录:
  表情:
评论话题
推荐阅读:
移动端js触摸touch详解(附带案例源码)   阅读:18741php 获取当前前后年、月、星期、日、时分秒的时间   阅读:7820PHP 鸟哥:我也曾经是“不适合”编程的人   阅读:16429centos 7 添加 redis 3.2.9 开机启动脚本   阅读:10598解决 nginx 413 request entity too large   阅读:5379十张GIF让你弄懂递归等概念   阅读:7116纯干货,程序员面试的超实用技巧   阅读:5098Nginx 配置文件详解   阅读:6054session与cookie的区别   阅读:4897centos 7 开启网络   阅读:8327phpexcel 超简单从excel表格一键导入数据到数据库教程   阅读:13488phpexcel 超简单从excel表格一键导入数据到数据库教程   阅读:13488php打印九九加法表   阅读:12519php打印三角形   阅读:12916最简单的Banner轮播左右切换效果代码及实现思路(附带源码)   阅读:34494web项目高并发量网站解决方案   阅读:5418centos 7 安装 php-7.1.3   阅读:22238linux命令中执行php脚本   阅读:9455phpexcel 超简单从excel表格一键导入数据到数据库教程   阅读:13488centos 7 添加 redis 3.2.9 开机启动脚本   阅读:10598nginx安装mysql和json模块   阅读:6715php swoole搭建简单的聊天室   阅读:5847shell脚本统计当前服务器并发连接数   阅读:8916linux时间戳有趣的情人节秒1234567890   阅读:6394linux php7安装yaf扩展   阅读:9772用php从1乘到100的值   阅读:7290centos 7搭建zabbix3.4   阅读:7599linux top命令详解   阅读:10835一键分享到QQ空间、QQ好友、新浪微博、微信代码   阅读:137281centos 7 添加 redis 3.2.9 开机启动脚本   阅读:10598ajax+php 实现一个简单的在线聊天室功能(附带源码)   阅读:10920shell脚本破解十位数内的所有纯数字rar加密压缩包脚本   阅读:10318shell脚本破解十位数内的所有纯数字rar加密压缩包脚本   阅读:10318Mysql在大型网站的应用架构演变   阅读:5443linux命令中执行php脚本   阅读:9455csv文件一键导入数据到mysql数据库   阅读:7752Nginx 配置文件详解   阅读:6054mysql5.7主从同步中binlog同步模式详解   阅读:9246php打印三角形   阅读:12916mysql5.7主从同步中binlog同步模式详解   阅读:9246给网站添加一键qq登录的功能   阅读:8625linux命令中执行php脚本   阅读:9455爱编程,也爱健康   阅读:5232把php session 会话保存到redis   阅读:8425网站局部小图片优化-base64编码图片   阅读:21432php 使用 smtp.php 类在线发送邮件功能   阅读:6708爱编程,也爱健康   阅读:5232phpexcel 超简单从excel表格一键导入数据到数据库教程   阅读:13488php swoole搭建简单的聊天室   阅读:5847php中地址引用&的真正理解-变量引用、函数引用、对象引用   阅读:6821