本文记录了一些本人学习的时候的增删改查的常用操作,适合新手阅读:
实例化模型的方法
1 $user = new \Model\UserModel();
2 $user = M(User);
3 $user = D(User); // User为表名字()模型名
选择模型
1 $user= M(User)->select();
$this->assign("user",$user);
$this->display();
2 $user= M(User)->select(2); //查询id为2的数据,2为id
3 $user = M(User)->where('name like "%名字%"')->select(); //查询姓名包含 名字 的数据
4 $user = M(User)->where('name like "%zy%" and age > 18')->select(); //查询姓名包含 名字 且 年龄大于18 的数据
5 $user = M(User)->limit(2,5)->select(); //查询第二到第五条数据
6 $user = M(User)->limit(2,5)->order("name desc")->select(); //降序查询第二到第五条数据
7 $user = M(User)->field('name,sex')->select(); //只查询姓名和性别
向表中添加数据
1 最直观的方法
public function add(){
if(!empty($_POST)){
$user['name'] = $_POST["name"];
$user['sex'] = $_POST['sex'];
$user['tel'] = $_POST['tel'];
$user['create_date'] = date("Y-m-d H:i:s");
$msg = "添加失败";
if(M("user")->add($user))
$msg = "添加成功";
$this->redirect(show_list,null,3,$msg);
}
$this->display();
}
2 使用create方法,前提条件是传过来的数据名必须和数据库字段名称一样
public function add(){
$user = M('user');
if(!empty($_POST)){
$user = $user->create();
$user['create_date'] = date("Y-m-d H:i:s");
$msg = "添加失败";
if(M("user")->add($user))
$msg = "添加成功";
$this->redirect(show_list,null,3,$msg);
}
$this->display();
}
3 使用系统的success和error方法跳转页面
public function add(){
$user = M('user');
if(!empty($_POST)){
$user = $user->create();
$user['create_date'] = date("Y-m-d H:i:s");
if(M("user")->add($user))
$this->success("添加成功",show_list,3);
else
$this->error("添加失败");
}
4 使用I()方法完成添加
public function add(){
if(!empty($_POST)) {
if (M("user")->add(I("post.")))
$this->success("添加成功", show_list, 3);
else
$this->error("添加失败");
}
$this->display();
}
更新数据update 用来更新数据
需要在update页面添加隐藏的id输入框将id传过来
public function update($id){
if(IS_POST){
$user = M('user');
$data = $user->create();
$data['create_date'] = date("Y-m-d H:i:s");
$msg = "修改失败";
if($user->save($data))
$msg = "修改成功";
$this->redirect(show_list,null,3,$msg);
}
$user = M('user')->find($id);
$this->assign('user',$user);
$this->display();
}
删除数据
public function delete($id){
$msg = "删除失败";
if(M('user')->delete($id))
$msg = "删除成功";
$this->redirect(show_list,null,1,$msg);
}
页面上的传值方式
<a href="__CONTROLLER__/update/id/{$vo.id}">修改</a>