Я не знаю, было ли это потому, что я слишком долго думал об этом, и мое мышление только что замерло, но я зациклился на логической дилемме. У меня есть проект, который заключается в том, чтобы создать (своего рода) план подготовки домашних студентов для студентов в колледже. Именно так я намереваюсь работать (я объясню проблему позже).Создание Планировщика с использованием PHP и MySQL
Для целей проекта (если это возможно) одна таблица будет необходимо:
- Вы идете на веб-страницу, где вы представлены с экрана входа в систему.
- Если вы администратор, у вас есть возможность добавлять пользователей и добавлять их в классы.
- Если вы учитель, вам будет представлена страница с кнопкой, позволяющей создавать домашнюю работу, просматривать незавершенные и просматривать все заданные задачи.
- Если вы студент, вам будет представлена страница с показом домашних заданий, которые еще предстоит выполнить, и кнопку, чтобы направить вас к тем, которые вы уже выполнили.
Проблема (ы) для меня:
- Как я могу создать его в базе данных, так что, когда учитель щелчки добавить домашнее задание, добавляет необходимый студент (ы), что он будет отображаться в задачах учеников. Я знаю, что могу что-то создать, чтобы, когда учитель нажимает «задание задачи» или что-то еще, переменные загружаются в соответствующие места в базе данных. Но это действительно запутанная часть для меня. Где находятся соответствующие места для хранения этой информации в базе данных? Учитывая, что мне нужно, чтобы заданная задача была загружена в КАЖДЫЙ выбранный ученик. Учитель должен иметь запись о том, кто выбрал, что они выполнили задание, а кто нет.
- Экран входа, который, когда вы нажимаете логин, вы остаетесь в системе?
Вещи, которые я уже выработанные:
- админ стороне. Как добавить пользователей, установить их как учителей/студентов/админов, дать им пароли и т. Д.
Мне очень нужна помощь, потому что я обычно не такой, это не что-то слишком сложное. Пожалуйста, если у кого-нибудь есть идеи, чтобы немного подтолкнуть меня, я бы очень признателен! : D
Похоже, что основной проблемой является дизайн базы данных. Я бы начал с составления диаграммы отношений сущностей (ERD) с отношениями 1: 1, 1: многие и многие: многие отношения между вещами. Вы обнаружите, что огромный объяснитель, как все это будет работать. – halfer
«Мне нужно, чтобы задание было загружено в КАЖДЫЙ выбранный ученик» - ага! Это звучит как много: много отношений: задача может быть задана многим студентам, а у ученика может быть много задач. Вам также нужна таблица мостов: 'student',' task' и 'student_task'. Последняя таблица обычно имеет только два внешних ключа: 'student_id' и' task_id', хотя она также может содержать метаданные (например, когда задача была назначена ученику, были ли они выполнены, комментарии учителя и т. Д.). – halfer
О да, как говорит Уильям, решение с одним столом будет катастрофой здесь. Используйте правильный реляционный подход. – halfer