$invoice_id = $data['invoice_id'];
        $remark = '  ### Manually set as Paid Note: '.$data['paid_note'].' ###';
        $sql = "UPDATE tbl_invoice SET payment_status = 1, remark = remark+'$remark' WHERE invoice_id = $invoice_id";


这应在“备注”字段中附加新值。但备注字段更新为“ 0”。奇怪!无法找出我的代码出了什么问题。任何想法?

N.B:我正在使用MySql DBMS。

最佳答案

您应该学习使用参数。但是您的问题是使用+,这是附加的。我想你想要字符串连接:

UPDATE tbl_invoice
    SET payment_status = 1,
        remark = CONCAT(remark, '$remark')
    WHERE invoice_id = $invoice_id;


但是,代码应更像这样:

UPDATE tbl_invoice
    SET payment_status = 1,
        remark = CONCAT(remark, ?)
    WHERE invoice_id = ?;


其中,?是参数的占位符。

07-24 09:54