Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Projektowanie tabel dla e-dziennika
Forum PHP.pl > Forum > Przedszkole
dolar
Witajcie, mam takiez oto zadanie:

Zaprojektuj system e-dzienniczka ucznia.
Założenia:
- wszystkie podstrony wymagaja logowania
- w systemie wyroznic mozemy 2 typy uzytkownikow: nauczyciel i uczeń
— nauczyciel jest przypisany do jednego *Przedmiotu*
— uczeń jest przypisany do jednej *Klasy* (np klasa 3b)
— każdy uczeń przypisany jest do ziobru *Przedmiotów* na ktore uczeszcza
— uczeń może posiadać wiele ocen z *Przedmiotu* (np Kasia ma 5, 4, 4, 2 z Matematyka)
— dla uproszczenia oceny mogą być tylko pełne
— dla uproszczenia jeden nauczyciel uczy tylko jednego przedmiotu

Pierwsza czescia jest zaprojektowanie tabel do tego zadania i chyba sie pogubilam... Poki co mam takei cos:

Tabela Uzytkownicy:
-id
-login
-email
-password
-status (uczen czy nauczyciel )

Ale z drugiej strony chcialam miec tez tabele takie jak :

Uczniowie:
-id
-imie
-nazwisko
-id_klasy
-ids_przedmiotow

oraz

Nauczyciele:
-id
-imie
-nazwisko
-id_przedmiotu
-id_klasy

I tak chyba jest problem bo nei wiem czy moze nie lepiej byloby jakos wrzucic te wszystkie 3 tabele do jednej?

Poza tym mam tez tabele takie jak :

Klasy:
-id
-numer ( np 1a, 2b itp )

Przedmioty:
-id
-nazwa

i Oceny :
-id
-id_ucznia
-id_przedmiotu
-oceny

Jak powinnam sie zabrac za te pierwsze 3 tabele ( Uzytkownicy, uczniowie i nauczyciele), zeby to jakos ladnie poczlaczyc? KAzdy uczen i nauczyciel mu byc zalogowany... stad moj problem.
Pyton_000
Połącz te 3 w 1 i dodatkowo tabela z relacją user->przedmioty i user->klasy. Czyli z 3 robisz znowu 3 ale inaczej zbudowane smile.gif
dolar
A co to sa te relacje? Zaleznosci? Bo nei bardzo rozumiem...

Powinnam miec teraz cos takiego:

Users ( tutaj uczniowie i nauczyciele ):

-id
-imie
-nazwisko
-status ( uczen czy nauczyciel)
-email
-haslo
-id_klasy ( tylko dla uczniow )
_ids_przedmiotow ( tylko dal uczniow )
-id_przedmiotu ( tlyko dla nauczycieli )
-ids_klas_ktore_uczy_nauczyciel ( tylko dla nauczycieli )

questionmark.gif

Chyba powinnam wtedy sobie darowac rejestracje bo to jakos nie widze tego ;p
viking
https://pl.wikipedia.org/wiki/Normalizacja_bazy_danych
http://www.teacher.webd.pl/kurs_mysql/k_2_2_3.php

Ciebie interesują relacje 1:n i wiele do wielu. Musisz utworzyć tabele pośrednie.
Pyton_000
Kod
Users:
- id
- name
- surname
- email
- password
- status #0 -teacher, 1-student

Class_User:
- class_id
- user_id

Subject_User:
- subject_id
- user_id
dolar
Wychdozi na to ze mam takei tabele :

USERS:
-id
-name
-surname
-status ( student, teacher )
-email
-password

USERS_CLASS:
-id
-class_id
-user_id

USERS_SUBJECTS
-id
-subjects_ids
-user_id

TEACHER
-id
-user_id
-subject_id
-classes_ids

CLASSES:
-id
-number

SUBJECTS:
-id
-name

DEGREES:
-id
-user_id
-subject_id
-degreees

Chyba bedzie tak grało? smile.gif
Pyton_000
TEACHER nie potrzebny
dolar
No ale dany naucyzciel moze uczyc wiele klas... to chyba jednk sie przyda?
Pyton_000
No to będziesz miał to zapisane w `users_calss`
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.