如果当前列`Id`与Codeignitor PHP中的另一个表匹配,如何计算行数?

问题描述 投票:-1回答:1

我正在使用Codeignitor开发School erp。我在计算行数时遇到问题。在这里,让我解释一下。

这是我的班级表。

enter image description here

这里是学生桌。enter image description here

这是我的看法enter image description here因此,我想从上课的学生中算出学生,并在班级名称下方的框中打印数字。如您所见,id fro表类与Table Student中笨拙的class_id相匹配。

这是我的标准代码:-

 //get class list in box 
     function getClassList() {
        $query = $this->db->select('*')->get('classes');
        return $query->result_array();
    }

我的控制器:-

function classlist() {

    if (!$this->rbac->hasPrivilege('student', 'can_view')) {
        access_denied();
    }
    $this->session->set_userdata('top_menu', 'Student Information');
    $this->session->set_userdata('sub_menu', 'student/search');
    $data['title'] = 'Student Search';
    $clist = $this->student_model->getClassList();
    $data['clist'] = $clist;
        $this->load->view('layout/header', $data);
        $this->load->view('student/studentSearch', $data);
        $this->load->view('layout/footer', $data);
    }
}

和这里是我的查看页面:-

            <?php foreach ($clist as $key  ) {
                ?>


                <div class="info-box">
                    <a href="<?php echo base_url();?>student/stdlists/<?php echo $key['id']; ?>">
                        <span class="info-box-icon bg-green"><i class="fa fa-child"></i></span>
                        <div class="info-box-content">
                            <span class="info-box-text"><?php echo $key['class']; ?></span>

                            <span class="info-box-number">**I want to Print The Total Count here**</span>
                        </div>
                    </a>
                </div>     

        <?php } ?>
        </div>
php codeigniter
1个回答
0
投票

您需要在getClassList函数中进行左联接和分组。

最终查询应该是这样的:

select count(t.id) as students_in_class, s.*
from class s
left join student t on s.id = t.class_id
group by t.class_id

但是您使用的是ORM,但我并不熟悉。...


0
投票

希望这对您有用。

$this->db->where('id','class_id');
$this->db->get('student');
$number_of_rows=$this->db->num_rows();
print_r($number_of_rows);
© www.soinside.com 2019 - 2024. All rights reserved.