Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL] Wyświetlanie pogrupowanych danych z bazy
mpps
post
Post #1





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

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


Witam,
mam dwie tabele:
1. idcat | itemcat

2. id | item | category

a w nich dane:
1. 1 | cat1
2 | cat2
4 | cat3
10 | cat5

2. 1 | item1 | 2
2 | item3 | 4
3 | item11 | 2
4 | item8 | 1
5 | item4 | 10
6 | item5 | 1
7 | item19 | 2

potrzebuję wyświetlić te wyniki zgrupowane wg. 'category', tzn.

cat1
- item8
- item5
cat2
- item1
- item11
- item19
cat3
- item3
cat5
- item4

mam takie zapytanie sql z pętlą while:
  1. <?php
  2. $items = mysql_query("select * from catering t1 inner join category t2 on (t1.category = t2.idcat) order by idcat") or die(mysql_error());
  3. while($rek = mysql_fetch_array($items)){
  4.    echo $rek[itemcat].'<br>';
  5.    echo $rek[item];
  6. }
  7. ?>


jak to przerobić, żeby wyświetlała się nazwa kategorii (raz) a pod nią wyniki z danej kategorii?
z góry dzięki za pomoc
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Zastosowanie tutaj zapytań w pętli to jedno z najgorszych rozwiązań jakie można było użyć.

Musisz pobrać wszystkie dane jednym zapytaniem, a następnie ładnie w php je obrobić.
Jako że problem dość często pojawia się na forum, postanowiłem opisać to troche:
http://nospor.pl/grupowanie-wynikow-n35.html
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: 3.10.2025 - 00:23