0

学生に関する情報を含む mysql テーブルがあり、別のテーブルは支払いに関する情報です。学生の名前と支払い情報を含むテーブルを表示したい。私のコードは正しいですか?または、これが空の配列になるため、それがどのように機能するかを誤解していますか? $data['students'] で見つかったすべての学生について、同じ学生 ID が今年のもので、クラス 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);        
    }

前もって感謝します、

タイスコーピオン。

4

1 に答える 1

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 を渡す方法です。

于 2012-10-09T17:19:37.917 に答える