Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dzienniczek ucznia w php i MySQL
Forum PHP.pl > Forum > Bazy danych
jaceknasierowski
Witam wszystkich!
Mam problem. Jestem początkujący w php i mysql. Chcę stworzyć internetowy dzienniczek ucznia. Jednak nie wiem, jak rozpocząć stworzenie takiego skryptu. Próbowałem w necie wyszukać coś podobnego, jednak bez rezultatu. Chciałbym mieć 10 przedmiotów:polski, niemiecki, historia, wos, chemia, fizyka, matematyka, wf, informatyka, muzyka. Jak stworzyć tabele i zapytanie i wyświetlanie wyników. Stworzenie takiego skryptu jest niby proste,ale jakoś się w tym pogubiłem. Skrypt ten powinien mieć prosty panel sterowania (admina) do edycji nazwisk, przedmiotów, ocen. Oraz system logowania uczniów do bazy. Byłbym bardzo wdzieczny programistom za pomoc. Pozdrawiam
Legro
Misisz sobie stworzyc nowa baze danych a w niej np. takie tabele: przedmioty, users etc.

Przykładowe zapytanie to tabeli przedmioty:

  1. CREATE TABLE `przedmioty` (
  2. `polski` VARCHAR( 20 ) NOT NULL ,
  3. `matematyka` VARCHAR( 20 ) NOT NULL ,
  4. `historia` VARCHAR( 20 ) NOT NULL ,
  5. );


Dodajesz potem nowe linijki..

Tabela users podobna:

  1. CREATE TABLE `users` (
  2. `id` INT( 10 ) NOT NULL AUTO_INCREMENT ,
  3. `nazwa` VARCHAR( 60 ) NOT NULL ,
  4. `haslo` TEXT NOT NULL ,
  5. PRIMARY KEY ( `id` )
  6. );


I dodajesz nowe linijki..

Jak chcesz cos odebrac z bazy przez php to robisz np tak:

  1. <?php
  2. $zapytanie = (&#092;"SELECT * FROM nazwa_tabeli WHERE cos = cos\");
  3. ?>


i tu petle robisz

poczytaj manual i jakies kursy mysql :/

Cytat
Jednak nie wiem, jak rozpocząć stworzenie takiego skryptu.


poczytac manual i jakies kursy mysql... zaczac od stworzenia tabel i tworzenia funkcji.. potem jak wiesz cos o php to pojdzie łatwo winksmiley.jpg

jak chcesz np. zrobic rejestracje userow to mozesz to w funkcji zrobic i na sesjach np. podam przyklad funkcji:

  1. <?php
  2.  
  3. function register() {
  4.  
  5. echo ' tutaj tresc html formularza do rejestracji userow ';
  6.  
  7. }
  8.  
  9. ?>


a tam gdzie chcesz miec rejestracje to dajesz np.
print register();

i sie wyswietla ten formularz co podales miedzy '' winksmiley.jpg

jak cos to pytaj
dag
@Legro: A po co na stale przypisywac nazwy przedmiotow do pol? Co jesli w nastepnym roku zmieni sie ilosc przedmiotow (odejda/dojda nowe)?

Lepiej zrobic:

tblPrzedmioty:
id_przedmiotu
nazwa_przedmiotu

tblOceny:
id_usera //klucz obcy do tabeli tblUsers
id_przedmiotu //klucz obcy do tabeli tblPrzedmioty
oceny


jest jeszcze jeden problem - oceny - moze wykorzystac wbudowane w baze rodzaje pol tablicowych (w zaleznosci od rodzaju bazy) lub wykorzystac np. XML.

jest wiele scenariuszy ;-)
Legro
Cytat
A po co na stale przypisywac nazwy przedmiotow do pol? Co jesli w nastepnym roku zmieni sie ilosc przedmiotow (odejda/dojda nowe)?


no przyznaje ci racje winksmiley.jpg

a do id by wypadalo dodac auto_increment
jaceknasierowski
smile.gif He! Dzięki za wielkie naprowadzenie;) Biorę się za robotę ;/ Ciekawe jaki będzie efekt. Oczywiście o nim poinformuję na forum;) P.S. Manuala czytam cały czas i mam książkę MySQL, kursy, mnustwo przykładowych skryptów na podstawie ktorych się uczę. Jednak jakoś mi to nie wychodzi. P.S. Faktycznie powinno być rozwiązanie oparte o edycję przedmiotu (nazwy i ilości).

Pozdrawiam Was i dzięki za pomoc smile.gif

Słabo mi to idzie. Mam zrobioną bazę szkola a w niej tabele: przedmioty i user
w przedmiotach odpowiednie przedmioty, ale nie rozumiem wyglądu tej drugiej tabeli user oraz jak zrobić zapytanie do tych baz?

Z góry wielkie dzięki:)
Pozdrawiam
yivan
Cytat(jaceknasierowski @ 2005-08-04 11:53:03)
w przedmiotach odpowiednie przedmioty, ale nie rozumiem wyglądu tej drugiej tabeli user oraz jak zrobić zapytanie do tych baz?

chcąc wybrać oceny usera numer 1, zapytanie powinno wyglądać mniej więcej taK:

Kod
SELECT nazwa_przedmiotu, oceny FROM Przedmioty p, Oceny o, Users u WHERE u.id=1 and u.id=o.id_usera and p.id=o.id_przedmiotu


możesz popróbować pozmieniać warunki, bądz całkiem je usunąć, ale wtedy otrzymasz iloczyn kartezjanski wszystkich tabel.
kmpl
Cytat(dag @ 31.07.2005, 19:03 ) *
@Legro: A po co na stale przypisywac nazwy przedmiotow do pol? Co jesli w nastepnym roku zmieni sie ilosc przedmiotow (odejda/dojda nowe)?

Lepiej zrobic:

tblPrzedmioty:
id_przedmiotu
nazwa_przedmiotu

tblOceny:
id_usera //klucz obcy do tabeli tblUsers
id_przedmiotu //klucz obcy do tabeli tblPrzedmioty
oceny

jest jeszcze jeden problem - oceny - moze wykorzystac wbudowane w baze rodzaje pol tablicowych (w zaleznosci od rodzaju bazy) lub wykorzystac np. XML.

jest wiele scenariuszy ;-)

Witam,
Mam prośbę, czy mógłby ktoś napisać mi skrypt tworzący tabelę Oceny?
Kreton
Ja coś takiego robiłem wcześniej, potem zaniechałem.

Zrobiłem :

+ dodawanie/ usuwanie uczniów
+ dodawanie/ usuwanie przedmiotow
+ zmiana ocen/uczniów/nazw przedmiotow poprzez formularz
+ Logowanie oparte na sesji

Nie zrobiłem:
- Nie jest przygotowane logowanie. Sa w bazie odpowiednie tabele do userow, tylko na chwile obecna kazdy do sie tam znajduje jest adminem. Wystarczy dodac jedna kolumne z polami np. "admin" , "advuser" , "simpleusr"
- Dodawanie przedmiotow w paneli administracyjnym nie powoduje zmiany na glownej stornie, bo nie jest to powiazane. Narazie w kodzie źrodłowym ręcznie dodawałem linie odpowiadajace za pobieranie ocen z bazy oraz formularz do zmiany konkretnej oceny u danego ucznia
- beznadziejny layout smile.gif
- mała optymalizacja zapytań MySQL ( ale jakaś tam jest )
- nie mam przygotowanego pliku z zapytaniami tworzącymi strukturę bazy. Bedziesz musiał wklepywać to sam .

Jezeli ci to pasuje, to podaj e-maila bo powiedz co potrzebujesz a ja dam ci kod który napisałem biggrin.gif
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.