联系官方销售客服
1835022288
028-61286886
我现在需要在控制器里面统计字段‘length’的总和,请问系统是否有现成函数调用呢,需要配合where或者可以附加限制条件的方法。
我写了一个可以实现,但是不知道取出所有数据然后PHP进行求和是不是合理和效率最优化。求指点。代码如下:
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()方法。我想执行完刷新当前页面应该如何操作呢,我现在是写:
'url' => "javascript:dr_ajax_confirm_url('" . SELF . "?s=demo&c=home&m=set_length&id={cid}','确定要执行吗?', '" . SELF . "?s=demo&c=home&m=index')"
跳转页面是这个列表的首页,而不是当前页面,应该是第三个参数写当前页。。我不知道插件的Clink.php应该如何表达刷新当前页。
以上2点求答,感谢