从函数中的查询中获取结果并计算codeigniter中的num\u行

hmae6n7t  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(252)

我在模型中的查询:

public function infoReprob(){
    $tid = $this->input->get('tid');
    $query = $this->db->select('histprob.tid,histprob.ketprob,histprob.updated_at,otslm.lokasi')->from('histprob')->join('otslm', 'otslm.tid = histprob.tid')->where('histprob.tid', $tid)->get();
    return $query->result();
 }

上面的查询用于在ajax的视图中完美地生成和工作。但我还需要计算结果,我正在尝试在控制器中使用以下内容:

function index(){
    $data['reprobs'] = count($this->m->infoReprob()); // USING COUNT
    $this->load->view('front/reprob_view', $data);
}

调用javascript中的变量,如:

<?php echo $reprobs; ?>

但结果是:0,即使实际的行数也大于0。
请帮忙解决这个问题。。非常感谢

lf3rwulv

lf3rwulv1#

尝试以下代码

function index(){
    $data['result'] = $this->m->infoReprob(); // get RESULT
    $data['count'] = $this->m->infoReprob(1); // get COUNT
    $this->load->view('front/reprob_view', $data);
}
public function infoReprob($count=0){

    $tid = $this->input->get('tid');
    $query = $this->db->select('histprob.tid,histprob.ketprob,histprob.updated_at,otslm.lokasi')->from('histprob')->join('otslm', 'otslm.tid = histprob.tid')->where('histprob.tid', $tid)->get();
if ($count == 1)
        return $query->num_rows();
    else
        return $query->result_array();
}

相关问题