Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Internetowy Dziennik Lekcyjny, problem z zapytaniem
Sixers
post 24.07.2008, 17:47:54
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 24.07.2008

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


Mam problem z w sumie prostym zapytaniem, ale nie mogę sobie z nim poradzić. Muszę połączyć 2 tabele (właściwie to 3, ale nieco to uprościłem):
uczniowie
Kod
uczen_id  smallint(5)
uczen_nr smallint(2)
uczen_imie varchar(100)
uczen_nazwisko varchar(150)
uczen_klasa smallint(5) // id klasy, $klasa_id


oceny
Kod
ocena_id int(10)
ocena_uczen smallint(5)  // id ucznia
ocena_przedmiot varchar(4) // $przedmiot
ocena_wartosc varchar(2)
ocena_etykieta smallint(5
ocena_data int (10)


Muszę stworzyć funkcję , która pobierze określone dane uczniów, z danej klasy (parametr $klasa_id), ich oceny z danego przedmiotu (pobierany jako parametr $przedmiot) i zapisze je do tablicy w postaci:

  1. <?php
  2. [#uczen_id] => Array (
  3.  [nr] => #uczen_nr
  4.  [imie] => #uczen_imie
  5.  [nazwisko] => #uczen_nazwisko
  6.  [oceny] => Array (
  7. [] => Array (
  8.  [wartosc] => #ocena_wartosc 
  9. [etykieta] => #ocena_etykieta 
  10. [data] => #ocena_data ) 
  11. ) 
  12. [] => Array (
  13. [warto&#347;ć] => ...
  14. [etykieta] => ...
  15. [data] => ...)
  16. ...))
  17.  [#uczen_id (kolejny) ] => ...
  18. ?>


W ten sposób chcę pobrać wszystkich uczniów z danej klasy, w przypadku gdy nie mają oceny to tablica z ocenami( $dane[#uczen_id]['oceny'] ) jest pusta…
W sumie proste, ale nie mogę sobie z tym poradzić, pobiera mi tylko jedną ocenę, a przy uczniach bez oceny wywala błędy :/

Liczę na pomoc winksmiley.jpg


PS -> Korzystam z Code Ignitera, a oceny powinny być posortowane wg #ocena_etykieta

Ten post edytował Sixers 24.07.2008, 17:50:28
Go to the top of the page
+Quote Post
webasek
post 24.07.2008, 18:10:05
Post #2





Grupa: Zarejestrowani
Postów: 274
Pomógł: 35
Dołączył: 18.07.2008
Skąd: Kielce

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


Rozbij to na dwa selecty jeden wyciągający uczniów i w pętli przypisz ich do do odpowiedniej zmiennej i wtej samej pętli zrób selecta do przedmiotów i tak samo w pętli dopisz przedmioty i do kazdego przedmiotu zrób selecta do ocen będzie o wiele prościej niż głowić się nad jednym zapytaniem.


--------------------
"Tylko dwie rzeczy są nieskończone: wszechświat oraz ludzka głupota,
choć nie jestem pewien co do tej pierwszej." Albert Einstein

Wirtualny Rynek Predykcyjny
Go to the top of the page
+Quote Post
Sixers
post 25.07.2008, 12:40:33
Post #3





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 24.07.2008

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


Już sobie poradziłem, udało się w jednym zapytaniu smile.gif
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 8.07.2025 - 21:08