PHP中没有递增的数字

时间:2016-03-26 16:14:59

标签: php

我试图从我的数据库中获取一个值,然后递增该数字。

我的代码:

public function updateStat($res, $id) {
    $field = ($res == 'useful') ? 'useful' : 'not_useful';

    $currStat = $this->_db->query("SELECT {$field} 
        FROM vragen WHERE id = {$id}");

    $currStat = ($field == 'useful') ? 
        $currStat->first()->useful : 
        $currStat->first()->not_useful;

    $currStat++;

    die($currStat);

    $data = $this->_db->query("UPDATE vragen 
        SET {$field} = {$currStat} WHERE id = {$id}");
}

死亡时没有输出。

3 个答案:

答案 0 :(得分:0)

您可以改进和简化代码。只需将select + update替换为仅更新:

public function updateStat($res, $id) {
    $data = $this->_db->query("UPDATE vragen SET {$field} = {$field} + 1 
        WHERE id = {$id}");
}

答案 1 :(得分:0)

你有相同的变量

$ currStat =($ field =='有用')? $ currStat-> first() - >有用:$ currStat-> first() - > not_useful;

<强> $ currStat ++;

可能永远是一个。

答案 2 :(得分:0)

刚刚解决了这个问题。显然死了它不会工作,但价值在数据库中成功更新。

感谢大家的帮助!