聯(lián)系官方銷售客服
1835022288
028-61286886
我現在需要在控制器里面統(tǒng)計字段‘length’的總和,請問系統(tǒng)是否有現成函數調用呢,需要配合where或者可以附加限制條件的方法。
我寫了一個可以實現,但是不知道取出所有數據然后PHP進行求和是不是合理和效率最優(yōu)化。求指點。代碼如下:
public function set_length() { $id = \Phpcmf\Service::L('Input')->get('id',); $rows = \Phpcmf\Service::M()->table(dr_module_table_prefix(APP_DIR).'_form_son')->select('length')->where('status','1' and 'cid',$id)->getAll(); \Phpcmf\Service::M()->table(dr_module_table_prefix(APP_DIR))->update($id, [ 'length' => array_sum(array_column($rows,'length')) ]); $this->_json(1, dr_lang('更新完成,即將刷新頁面')); }
還有一個,我前端調用了js的dr_ajax_confirm_url()方法。我想執(zhí)行完刷新當前頁面應該如何操作呢,我現在是寫:
'url' => "javascript:dr_ajax_confirm_url('" . SELF . "?s=demo&c=home&m=set_length&id={cid}','確定要執(zhí)行嗎?', '" . SELF . "?s=demo&c=home&m=index')"
跳轉頁面是這個列表的首頁,而不是當前頁面,應該是第三個參數寫當前頁。。我不知道插件的Clink.php應該如何表達刷新當前頁。
以上2點求答,感謝
回復@官方研發(fā)技術-胡老師
我也試過了,不知道這樣寫是不是不對。返回的lengths=NULL
SELECT SUM(length) AS lengths FROM dr_1_demo_form_son
看著沒問題,很標準,去phpmyadmin里面運行下看看結果
回復@阿Rain
PhpMyAdmin里面正常的,能獲取到數據,所以套用數據庫的query不知道為啥是null
總算解決了運行SQL問題
跳轉問題后面再研究吧。