Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> dynamiczne menu - pytanie
dachu
post
Post #1





Grupa: Zarejestrowani
Postów: 70
Pomógł: 0
Dołączył: 30.08.2005

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


cześć zrobiłem dynamiczne menu na bazie mysql, dwie tabelki, w pierwszej mam przechowywane nazwe poszczeólnych wykazów menu: id_kat, nazwa_kat, a w drugim podkategorie: id_kat, nazwa_podkat, tresc_str.

id_kat - to klucz wiąże obie tabelki.

druga tabela ma pole o nazwie: tresc_str , pole to przechowuje treść danej podstrony.

Moje pytanie: jak wygenerować to menu z bazy żeby wyświetliło mi Kategorie główne menu: czyli np: Artykuły a pod spodem podkategorie z nazwa_podkat, itd Poniżej tak obrazmowo, np:


Strona główna
----------------
Artykuły
- Jakiś art1
- Jaiś art2
- id
----------------
FAQ
----------------
Kontakt

itd



Mam coś takiego:


$query="select * from kategorie left join podkategorie on kategorie.id_kat=podkategorie.id_kat group by kategorie.id_kat";



no i jest prawie dobrze tylko kiedy ma wyświetlić kategorie z podkategoriami to wyświetla kategorie - NAZWE (nazwa_kat) tyle razy ile jest jej podkategorii. a powinno wyświetlić się: raz kategoria i potem pod nią podkategorie.

prosze o pomoc.


A może ma ktoś inny pomysł na rozwiązanie ?
Go to the top of the page
+Quote Post
TomASS
post
Post #2





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


Ktoś już kiedyś miał podobne pytanie:

Zapraszam

A tak swoją drogą, to coraz częściej pada na tym forum zdanie, że coś już było, czyżby w końcu wyczerpał się limit pytań? tongue.gif


--------------------
Go to the top of the page
+Quote Post
dachu
post
Post #3





Grupa: Zarejestrowani
Postów: 70
Pomógł: 0
Dołączył: 30.08.2005

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


to mi nic nie mówi he ... jestem zielony jak liść ... ale nie sądziłem że z takim drzewkiem będzie taki problem, ... ale ja mam troche łatwiejsze od tamtego, bo mam tylko kategorie menu i jedną podkategorie, guitar.gif ale sam tego nie rusze, dziś spadło mi na klawiature od główkowania w chu... sierści... mam dość ... sadsmiley02.gif
Go to the top of the page
+Quote Post
TomASS
post
Post #4





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


To co na szybko przychodzi mi do głowy to zrobić to w dwóch podzapytaniach:

1.
  1. SELECT ID, Nazwa
  2. FROM kategorie;


2.
  1. <?php
  2.  
  3. $query = "SELECT Nazwa FORM podkategorie WHERE Kategoria=$row['ID']";
  4.  
  5. ?>


Ale wtedy musisz wykonać kilka zapytań.

Możesz spróbować także grupowania = GROUP BY....


--------------------
Go to the top of the page
+Quote Post
batman
post
Post #5





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




A próbowałeś już zapytań zagnieżdżonych? Oraz zgadzam się z przedmówcą: ORDER BY, ewentualnie DISTINCT


--------------------
I would love to change the world, but they won't give me the source code.
My software never has bugs. It just develops random features.
Go to the top of the page
+Quote Post
TomASS
post
Post #6





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


Thx za poparcie smile.gif Tylko trza pamiętać, że zagnieżdzone zapytania dopiero od MySQL 5 smile.gif Gdyby to było takie proste w MySQL 4....smile.gif


--------------------
Go to the top of the page
+Quote Post
mike
post
Post #7





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Cytat(TomASS @ 2005-08-30 23:39:26)
Tylko trza pamiętać, że zagnieżdzone zapytania dopiero od MySQL 5 smile.gif Gdyby to było takie proste w MySQL 4....smile.gif

Podzapytania są w MySQL w wersji 4.1, która ma w tej chwili status recommended.
Go to the top of the page
+Quote Post
TomASS
post
Post #8





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


O to przepraszam, za wprowadzenie w błąd.


--------------------
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 Aktualny czas: 20.08.2025 - 11:21