【发布时间】:2015-10-30 09:09:29
【问题描述】:
第一个条件有效,如果为 1 则标志设置为 0 但它不能在单击打孔按钮时返回 1。这是模型函数。称为login_info_model,它存储打卡和打卡的日期和时间。
function login_info_model($id)
{
$reg = "%Y:%m:%d:%h:%i";
$data = array(
'logindt' => mdate($reg) ,
'userid' => $id
);
$qry = $this->db->insert('registry', $data);
if ($qry) {
$on = array(
'flag' => 1
);
$off = array(
'flag' => 0
);
$flg = $this->db->get('users', 'flag');
if ($flg == 1) {
$this->db->where('id', $id);
$this->db->where('flag', 1);
$this->db->update('users', $off);
} else {
$this->db->where('id', $id);
$this->db->where('flag', 0);
$this->db->update('users', $on);
}
return $qry;
}
}
【问题讨论】:
-
或者这项工作是否有效 $ert="IF(users.flag = 1 THEN SET flag = 0) ELSEIF (users.flag = 0 THEN SET flag = '1' END IF)"; $this->db->update('users',$ert);
-
我不确定我是否理解您的问题。此外,您格式化代码的方式不利于可读性。
-
它现在更具可读性,这是代码点火器模型类中的一个函数,它应该存储日期和时间,在用户点击时将名为 flag 的 tinyint- 字段设置为表 users..to 1/0视图中的打入/打出按钮。
-
k0pernikus 什么?
-
您确定在您尝试重新启用时调用了更新方法吗?
标签: php mysql codeigniter codeigniter-3