Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Kategorie i podkategorie, Rekurenkcja ?
tiraeth
post 2.04.2005, 09:45:54
Post #1





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

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


Witam!

Mam problem, otóż mam tabelę w MySQL, w której trzymam informacje o kategoriach (potrzebne do systemu downloadu). I teraz nie mogę sobie poradzić z jednym problemem.

Kod
categoryid | category_name        | category_parentid | category_allowedfiles |
-----------+----------------------+-------------------+-----------------------+
     1     | Kategoria Glowna 1   |         0         |          all          |
     2     | Podkategoria Kat 1   |         1         |          all          |
     3     | Kategoria Glowna 2   |         0         |          all          |
     4     | Podkategoria Podkat1 |         2         |          all          |
     5     | Podkategoria Kat 2   |         3         |          all          |
-----------+----------------------+-------------------+-----------------------+
4 columns
5 records


Nie wiem jak wyświetlić na stronie te kategorie w takiej formie:
Kod
Kategoria Glowna 1
   Podkategoria Kat 1
      Podkategoria Podkat 1
Kategoria Glowna 2
   Podkategoria Kat 2


Próbowałem to zrobić rekurenkcyjnie ale coś mi nie wychodziło... korzystam ze standardowych funkcji mysql_, proszę o pomoc!


pozdrawiam!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
lemming
post 2.04.2005, 12:11:11
Post #2





Grupa: Zarejestrowani
Postów: 79
Pomógł: 0
Dołączył: --
Skąd: Gdańsk

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


  1. <?
  2. function tree($sql = '0',$level = '0') {
  3. $select = &#092;"SELECT * FROM menu WHERE category_parentid = \".$sql.\"\"; 
  4. $sql = mysql_query($select);
  5. $sub = &#092;"\";
  6. while($row = mysql_fetch_array($sql)) {
  7. for($i=0;$i < $level; $i++) {
  8. $output .= &#092;"&nbsp;&nbsp;&nbsp;\";
  9. }
  10. $sub .= &#092;"$output <a href=\"cos.html\"><b>\".$row[category_name].\"</b></a><br>\";
  11. $sub .= tree($row[categoryid],$level+1);
  12. unset($output);
  13. }
  14. return $sub;
  15. }
  16. ?>


Ten post edytował lemming 2.04.2005, 12:13:26
Go to the top of the page
+Quote Post
tiraeth
post 2.04.2005, 12:26:58
Post #3





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

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


@lemming: dzięki, po małych przeróbkach działa biggrin.gif
Go to the top of the page
+Quote Post
orson
post 2.04.2005, 12:32:57
Post #4





Grupa: Zarejestrowani
Postów: 548
Pomógł: 2
Dołączył: 19.07.2003

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


Witam ...

taka funkcja ma tylko jedna ale za to powazna wade ... jest w niej tyle zapytan co galezi ... ale mozna przerobic ta funkcje by przechowywala wyniki zapytania pobierajacego wszyskie i wyszukiwania po parent ID zalatwia sie w 1, moze 2 zapytaniach [na 2 jest latiwej zrobic] ... wystawil bym chetnie gotowa klase do drzew ktora stosuje ale mam kompa unieruchomionego [plyta sie spalila :|] ... moze next week

pozdrawiam


--------------------
Computer games don't affect kids; I mean if <span style="font-weight: bold;">Pac Man</span> affected us as kids,we would all be running around in darkened rooms, munching magic pills and listening to repetitive electronic music.
Go to the top of the page
+Quote Post
kobe
post 17.04.2005, 10:08:13
Post #5





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 7.12.2004
Skąd: planeta -> ZIEMIA | kontynent -> EUROPA | kraj -> Polska | województwo -> ŁÓDZKIE | miasto -> TOMASZÓW MAZ

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


chętnie zobacze tą klase, sam czegoś takiego poszukuje winksmiley.jpg
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: 19.07.2025 - 19:36