veZuk
Новичок
Формирование таблицы из выбранных данных
Помогите разобраться. Парюсь с электронным журналом.
Пример результата вывода
Цель: хочу сформировать таблицу вида:
Если быть точнее, то это сформировано уже программно, но с жестоким быдлокодом, в виде запросов к БД в цикле. Пытаюсь найти более оптимальный вариант.
Логика такая: в первую колонку название предмета. Последующие колонки соответствуют дню недели, оценок в ячейке может быть несколько, если в заданный день было несколько уроков. Как я понимаю, прогоняю в цикле дни месяца и если совпадает, то формирую ячейку с соответствующими оценками за этот день. Проблема в том, что не знаю с какой стороны вообще подобраться к разбору этого массива для формирования таблицы. Вывод по print_r весьма близок к результату, но по какому алгоритму это происходит - не знаю. Что-то похожее я не нашёл. Хотя возможно что можно как-то по-другому это сделать. В общем, хочу совета или подобных примеров
Помогите разобраться. Парюсь с электронным журналом.
PHP:
$query = "SELECT lesson_subject_id, lesson_date, lesson_id, mark_value, mark_secvalue FROM lessons, marks WHERE marks.mark_lesson_id = lessons.lesson_id AND marks.mark_student_id = '$student_id' AND MONTH(lessons.lesson_date) = '$selected_month';";
$result = DB_Query($db_link, $query);
if (mysql_num_rows($result) != 0) {
while ($row = mysql_fetch_assoc($result)) {
#$line[subject_id][lesson_date][lesson_id][mark]=mark_value;
$line[$row['lesson_subject_id']][$row['lesson_date']][$row['lesson_id']]['mark'] = $row['mark_value'];
$line[$row['lesson_subject_id']][$row['lesson_date']][$row['lesson_id']]['secmark'] = $row['mark_secvalue'];
}
print_r ($line);
}
Цель: хочу сформировать таблицу вида:

Если быть точнее, то это сформировано уже программно, но с жестоким быдлокодом, в виде запросов к БД в цикле. Пытаюсь найти более оптимальный вариант.
Логика такая: в первую колонку название предмета. Последующие колонки соответствуют дню недели, оценок в ячейке может быть несколько, если в заданный день было несколько уроков. Как я понимаю, прогоняю в цикле дни месяца и если совпадает, то формирую ячейку с соответствующими оценками за этот день. Проблема в том, что не знаю с какой стороны вообще подобраться к разбору этого массива для формирования таблицы. Вывод по print_r весьма близок к результату, но по какому алгоритму это происходит - не знаю. Что-то похожее я не нашёл. Хотя возможно что можно как-то по-другому это сделать. В общем, хочу совета или подобных примеров
