Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Lista obecności uczniów na przedmiocie w danej szkole
emillo91
post
Post #1





Grupa: Zarejestrowani
Postów: 129
Pomógł: 13
Dołączył: 29.03.2012

Ostrzeżenie: (0%)
-----


Witam. Chcę się zapytać jak mogę rozwiązać problem zapisu id uczniów nieobecnych na zajęciach, do tabeli MySQL. Zarys tabeli przedstawia się tak:
CODE
id_listy | id_przedmiot | id_nieobecne | id_klasa | id_szkola | data_listy

Przedstawiona tabela jest tabelą dzienniczka elektronicznego. Mój problem polega na tym że nie wiem czy powinienem zapisywać wszystkie id nieobecnych uczniów do pola o nazwie "id_nieobecne" a następnie rozdzielać to w PHP pętlą. Chodzi mi o coś takiego:
CODE
id_listy | id_przedmiot | id_nieobecne | id_klasa | id_szkola | data_listy
1 | 3 | 1426 | 6 | 8 | 2017-22-03

gdzie 1426 to osobne id uczniów
Baza dzienniczka elektronicznego będzie bazą dla wielu szkół dlatego chcę tworzyć listy obecności w jednej tabeli i później wybierać obecności po id przedmiotu, id klasy oraz id szkoły. Moim zdaniem takie rozwiązanie jest dobre do momentu aż przyjdzie mi rozdzielać te obecności na każdego z uczniów w danej szkole. Będę wdzięczny za każdą pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Pilsener
post
Post #2





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Punktem wyjścia i sercem modelu powinna być tabela "zajęcia", która zawiera coś w rodzaju:
- datę zajęć
- kto prowadzi (imię/nazwisko)
- relację do listy uczestników/uczniów (oddzielna tabela z jakiś polem typu boolean isPresent i oczywiście imię/nazwisko ucznia)
- dane klasy (np. nazwa XIII B )
- dane przedmiotu (np. pauperyzacja w społeczeństwie)

Do tego panel administracyjny gdzie definiujemy wszystko co niezbędne do zapełnienia tabeli "zajęcia"
- tabelę użytkowników
- tabelę klas
- tabelę przedmiotów
- tabelę uczniów (id użytkownika + id klasy)
- tabelę nauczycieli
- itd.

Trzeba pamiętać o historycznym aspekcie danych.
Można np. zastąpić imię/nazwisko user_id jeśli założymy, że tabela users jest immutable i np. wyrzucenie ucznia ze szkoły nie będzie skutkowało jego usunięciem z tej tabeli. Inaczej ktoś chciałby zobaczyć zajęcia id=1 sprzed roku i mógłby się zdziwić, że np. belfer jest inny (IMG:style_emoticons/default/Lkingsmiley.png) Nauczyciele, rodzaje zajęć, liczba klas - to wszystko zmienia się w czasie i należy to uwzględnić.

Ten post edytował Pilsener 5.10.2017, 11:22:45
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 09:37