如何使用其他查询的信息查询数据库?

时间:2012-10-09 17:05:58

标签: php arrays codeigniter activerecord

我有一个mysql表,其中包含有关学生的信息,另一个将提供有关付款的信息。我想显示一个包含学生姓名和付款信息的表格。我的代码是否正确?或者我误解它是如何工作的,因为这会导致一个空数组。 我想要它,因为它在$ data ['students']中找到的每个学生都要从今年开始搜索相同学生的付款信息,并且班级ID与$ id相同。有更简单的方法吗?

    $data['students'] = $this->db->get_where('students', array('class_id' => $id), 40);

    foreach ($data['students']->result_array() as $student){        
        $data['student_info'] = $this->db->get_where('student_payments', array('class_id' => $id, 'student_id' => $student['id'], 'year' => date("Y")), 40);        
    }

提前致谢,

Thaiscorpion。

1 个答案:

答案 0 :(得分:1)

$query = "SELECT * FROM students
JOIN student_payments on student_payments.student_id = students.student_id
WHERE students.class_id= $id"
$result = my_sql_query($query);
if($result->num_rows() >0)
{
    return $result->result_array();
}  else  {
    return array();
}

一旦我开始加入桌子,我个人完全跳过CI的东西,有时它只是让事情变得比他们需要的更困难。我在代码中没有看到的唯一一件事就是你如何传递class_id。