Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] poprawne wyświetlanie tabeli
Nemesis
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 24.10.2009

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


Witam

Mam mały problem z wyświetlaniem danych w tabelce na stronie.

W bazie mam takie tabele:
UZYTKOWNICY
Id_uzytkownika | Imie | Nazwisko

KLASA
Id_klasa | Jaka_klasa

PRZEDMIOTY
Id_przedmiot | Nazwa_przedmiotu

OCENY
Id_ocena | Oceny

I chcę wyświetlić taką tabelę na stronie:

Nazwisko 1 | Imie 1 | Ocena
----------------------------
Nazwisko 2 | Imie 2 | Ocena
----------------------------
Nazwisko 3 | Imie 3 | Ocena
----------------------------
Nazwisko 4 | Imie 4 | Ocena

ale mam pewien problem.

Zapytanie wyświetlające dane wygląda następująco:
  1. $zapytanie=mysql_query("SELECT uzytkownicy.Imie, uzytkownicy.Nazwisko, oceny.Oceny FROM klasa natural join przedmioty natural join uzytkownicy LEFT JOIN oceny ON uzytkownicy.Id_uzytkownik = oceny.Id_uzytkownik where Jaka_klasa='$klasa' and przedmioty.Nazwa_przedmiotu='$przedmiot' ORDER BY uzytkownicy.Nazwisko");


Jeśli każda osoba ma po jednej ocenie to jest Ok, lecz jeśli ktoś ma więcej ocen, to powtarzane jest Nazwisko, Imię i dopiero ocena:

Nazwisko 1 | Imie 1 | Ocena
----------------------------
Nazwisko 2 | Imie 2 | Ocena
----------------------------
Nazwisko 2 | Imie 2 | Ocena
----------------------------
Nazwisko 3 | Imie 3 | Ocena
----------------------------
Nazwisko 4 | Imie 4 | Ocena

Powinno być:

Nazwisko 1 | Imie 1 | Ocena
----------------------------
Nazwisko 2 | Imie 2 | Ocena | Ocena
----------------------------
Nazwisko 3 | Imie 3 | Ocena
----------------------------
Nazwisko 4 | Imie 4 | Ocena


Wyświetlanie tabeli wygląda następująco:

  1. if(mysql_num_rows($zapytanie) > 0) {
  2. echo "<table cellpadding=\"1\" border=1>";
  3. while($r = mysql_fetch_object($zapytanie)) {
  4. echo "<tr>";
  5. echo "<td>".$r->Nazwisko."</td>";
  6. echo "<td>".$r->Imie."</td>";
  7. echo "<td>".$r->Oceny."</td>";
  8. echo "</tr>";
  9. }
  10. echo "</table>";
  11. }


Niestety nie mogę sobie z tym problemem poradzić by nie powtarzało mi nazwisk i wyświetlało pojedynczo oceny, a wyświetlało jedno nazwisko, imię i kilka ocen obok.
Jeśli ktoś wie w czym tkwi problem to proszę o pomoc.
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: 20.12.2025 - 21:44