Yii 增删改查 测试记录

亲们, 我是yii小白 不要笑话我奥。今天白天写一个管理模块涉及到 yii ar 下的  curd 操作,做 update 操作时纠结了好久,今天晚上花点时间学习, 下面写下我的测试记录

代码如下:

 1     public function actionIndex(){
 2 
 3         // 写入数据
 4         //yii  ar  curd  之   insert
 5         $_POST['Users']['sex'] = 2;
 6         $_POST['Users']['username'] = 'xiaohua';
 7         $model = new Users;
 8         $model->attributes = $_POST['Users'];
 9         $rt = $model->save();
10 
11         if($rt) {
12             Yii::app()->user->setFlash('success','写入成功了');
13             $this->redirect(array('index/test'));
14         } else {
15             Yii::app()->user->setFlash('error','失败了');
16             $this->redirect(array('index/test'));
17         }
18 
19     
20         // 查询数据
21         //get one data by field
22         $hh = Users::model()->find(
23               'username=:name',array(':name'=>'fzb')
24             );
25         print_r($hh['username']);
26 
27         //get one data by id
28         $hh = Users::model()->findByPk(1);
29         print_r($hh['username']);
30 
31         //get all
32         $hh = Users::model()->findAll();
33         print_r($hh);
34 
35         //  修改数据  
36         // update  one
37         $model = new Users;
38         $count = $model->updateByPk(5,array('username'=>'admin','sex'=>1));
39         if($count) {
40             Yii::app()->user->setFlash('success','修改成功了');
41             $this->redirect(array('index/test'));
42         } else {
43             Yii::app()->user->setFlash('error','修改失败了');
44             $this->redirect(array('index/test'));
45         }
46 
47 
48     }

 

---分页查询

一般写法:
$criteria = new CDbCriteria;
$count = DnOnline::model()->count($criteria);
$pages = new CPagination($count);               
$pages->pageSize = 5;
$pages->applylimit($criteria);
$model = DnOnline::model()->findAll($criteria);

记得控制器里有个函数paginate($itemCount,$pageSize=null,$pageVar=null)
CDB写法:

$criteria = new CDbCriteria;
$sql = "SELECT * FROM USER";
$model= Yii::app()->db->createCommand($sql)->queryAll();
$pages = new CPagination(count($model));               
$pages->pageSize = 4;
$pages->applylimit($criteria);
$model=Yii::app()->db->createCommand($sql." LIMIT :offset,:limit");
$model->bindValue(':offset', $pages->currentPage*$pages->pageSize);
$model->bindValue(':limit', $pages->pageSize);
$model=$model->queryAll();

或者:

      $criteria = new CDbCriteria;
      $connection=Yii::app()->db; 
      $sql="SELECT u.account,i.* FROM sys_user as u left join user_info as i on u.id=i.user_id ";
      $model= Yii::app()->db->createCommand($sql)->queryAll();
      $pages = new CPagination(count($model));               
      $pages->pageSize = 4;
      $pages->applylimit($criteria);

      $model=Yii::app()->db->createCommand($sql." LIMIT :offset,:limit");
      $model->bindValue(':offset', $pages->currentPage*$pages->pageSize);
      $model->bindValue(':limit', $pages->pageSize);
      $model=$model->queryAll();

 

 

yii 删除


1、Post::model()->deleteAll($condition,$params); 
 $count = Admin::model()->deleteAll('username=:nameandpassword=:pass',array(':name'=>'admin',':pass'=>'admin')); 
         $id=1,2,3  
         deleteAll('id in(".$id.")');删除id为这些的数据 
if($count>0){  
   echo "删除成功";  
}else{  
   echo "删除失败";  
}  
 2、Post::model()->deleteByPk($pk,$condition,$params); 
$count = Admin::model()->deleteByPk(1); 
$count =Admin::model()->deleteByPk(array(1,2),'username=:name',array(':name'=>'admin')); 
if($count>0){  
   echo "删除成功";  
}else{  
   echo "删除失败";  
}

希望大婶们嘴下留情

我还是小白呢

有不足之处希望大家指出,谢谢!

转载于:https://www.cnblogs.com/dwight/p/yii_ar_curd.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值