如何在codeigniter中更新数据库中特定列的值

uklbhaso  于 2021-06-20  发布在  Mysql
关注(0)|答案(2)|浏览(256)

目前,我在电子商务网站上工作,在供应商方面,每当用户生成订单时,订单金额应添加到钱包中(例如,如果供应商钱包中的金额为1500,用户生成的订单为500,则钱包的更新值应为2000),但在我的情况下,它将变成500。如果有人知道解决方案比请帮助。下面是我的controller.php代码

Public function clone_job()
    {
        $sellerData = $this->Mdl_admin_login->seller_list();
        foreach ($sellerData as $seller)
        {
            $wallet = 0;
            $payment = $this->Mdl_admin_login->get_payment_list($seller['id']);
            foreach ($payment as $payments){
                $wallet =  $wallet + $payments['settlement_price']*$payments['qty'];
                $wallets = $this->Mdl_admin_login->add_wallet($wallet,$seller['id']);
                $is_pay = $this->Mdl_admin_login->is_pay($payments['id']);
            }
        }
    }

模型.php

function add_wallet($wallet,$id)
    {
        $data = array(
            'wallet' => $wallet,
        );
        $this->db->where('id',$id);
        $this->db->update('seller', $data);
    }
aiqt4smr

aiqt4smr1#

请试试这个。

function add_wallet($wallet,$id){
    $this->db->set('wallet', 'wallet+'. $wallet, false);
    $this->db->where('id',$id);
    $this->db->update('seller');
}
7hiiyaii

7hiiyaii2#

你可以用

function add_wallet($wallet,$id){
    $this->db->set('wallet', 'wallet+'. $wallet, false);
    $this->db->where('id',$id);
    $this->db->update('seller');
}

相关问题