Я использую Moodle и функцию get_course_students для получения списка студентов
$students = get_course_students($course->id, 'lastname');
echo print_r($students);
Это выводит:
Array (
[4382] => stdClass Object (
[confirmed] => 1
, [username] => test22
, [firstname] => test
, [lastname] => 22
, [maildisplay] => 2
, [mailformat] => 1
, [maildigest] => 0
, [email] => test22@test.couk
, [city] => test
, [country] => GB
, [picture] => 1
, [idnumber] =>
, [department] =>
, [institution] =>
, [emailstop] => 0
, [lang] => en_utf8
, [timezone] => 99
, [lastaccess] =>
, [id] => 4382 )
[518] => stdClass Object (
, [confirmed] => 1
, [username] => st999999
, [firstname] => st999999
, [lastname] => account
, [maildisplay] => 2
, [mailformat] => 1
, [maildigest] => 0
, [email] => st999999@test.co.uk
, [city] =>
, [country] => GB
, [picture] => 1
, [idnumber] =>
, [department] =>
, [institution] =>
, [emailstop] => 0
, [lang] => en_utf8
, [timezone] => 99
, [lastaccess] => 1315843176
, [id] => 518
)
)
Затем я хочу посчитать количество записей в таблице, но только тех студентов, которые в данный момент назначены на курс.
$totalreportscountrecords = count_records_sql("SELECT COUNT(*) FROM mdl_ilp_reports WHERE course = $course->id AND user = $students");
Как мне изменить оператор SQL, чтобы сделать это? Любая помощь будет принята с благодарностью.