AR类能不能实现这样的UPDATE语句,还是要逼我用query了
我要的UPDATE语句UPDATE `pre_credits` SET `user_name` = '贝壳测试帐号', `user_credits` = user_credits+5
Credits_model.php
function MinusCredit($username)
{
$query=$this->db->query("SELECT * FROM `pre_credits` WHERE `user_name` LIKE '$username' AND `user_credits` >= 3");
if($query->num_rows() > 0)
{
$data = array(
'user_name' => $username ,
'user_credits' => user_credits-3
);
$this->db->update('pre_credits', $data);
return 1;
} else {
return -1;
}
}
Question.php(Contrller)
if(@$data['user_name']!=null){
$this->load->model('Credits_model');
$this->load->database();
$tmp=$this->Credits_model->MinusCredit($data['user_name']);
if(@$tmp!=-1){
echo '金币-3';
} else {
echo '金币不足,无法操作!';
}
}
万能的AR类真的这样倒在一个小小的SQL运算了吗,反正我是不信{:soso_e130:} ->set('user_credits', 'user_credits+5', FALSE)->xxxxxxxxxxxxxxxxxxx
仔细看手册 jeongee 发表于 2012-6-8 22:02 static/image/common/back.gif
->set('user_credits', 'user_credits+5', FALSE)->xxxxxxxxxxxxxxxxxxx
仔细看手册
真心木有看到,能看的都看了 自定义 key/value 方法:
你可以在第一个参数中包含一个运算符,以便控制比较:
$this->db->where('name !=', $name);
$this->db->where('id <', $id);
// 生成: WHERE name != 'Joe' AND id < 45
希望你仔细看下$this->db->where();http://codeigniter.org.cn/user_guide/database/active_record.html#update :D whosheng 发表于 2012-6-10 10:41 static/image/common/back.gif
自定义 key/value 方法:
你可以在第一个参数中包含一个运算符,以便控制比较:
$this->db->where('name !=', ...
當初貌似寫Query的時候少個Where,直接SET,下場你懂得
页:
[1]