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()方法:更新数据
代码实例:
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



