![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 711 Pomógł: 127 Dołączył: 5.07.2008 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam, zrobiłem sobie skrypt dzienniczka ucznia. Zasady działania nie muszę za pewne tłumaczyć (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) .
Mam 2 tabele w mysql: (IMG:http://i43.tinypic.com/2rh4591.png) (IMG:http://i44.tinypic.com/1g11tg.png) Skliciłem taki oto skrypt:
co dało taki rezultat (taki jak ma być) (IMG:http://i42.tinypic.com/kevzew.png) Jak zauważyliście skrypt ten pobiera najpierw listę przedmiotów i podczas każdego przebiegu pętli jest wykonywane zapytanie o oceny do tego przedmiotu... Nie wydaje się wam się też że to jest nieoptymalne? Jak pobrać to wszystko bez zawierania w pętlach zapytań do sql? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
jeszcze jedno zauważyłem że "dokładasz" do ocen - wyświetlając w pętli to zapytanie zrób sobie przed petlą jakąś zmienną i w pętli sprawdzaj czy jej wartość jest różna od id_przedmiotu - jesli różna wyświetlisz cały wiersz, jeśli taka sama to pomiń prawie cały rekord i dopisz ocenę - po tym na koniec pętli przypisz wartość tej zmiennej co porównujesz wartość id_przedmiotu.... mam na myśli taką sytuację zwróconą z bazy: Kod przedm_id ||przedm_nazwa || ocena_stopien || ocena_waznosc 1 || j.pol || 10/20 || 1 1 || j.pol || 3 || 2 2 || j.ang || 5 || 2 lub w 2 zapytaniach prawie tak jak zrobiłeś tyle że pobież odrazu pełne tabele te co potrzebujesz i przyrównaj to w php gdyż odwołanie w pętli do bazy nie jest najlepszym pomysłem... Ten post edytował zegarek84 17.01.2009, 06:21:52 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 01:52 |