Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL][HTML] Jak zbudowac drzewo na podstawie danych z Mysql?
tokone
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 12.02.2010

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


Witam serdecznie, jestem nowy na forum i jestem początkujący w tematyce PHP i relacjami jego z bazą MYSQL.

Potrzebuje pomocy, mianowicie mam zbudowana bazę mysql sa w niej 2 tabele "kategoria" i "podkategoria" Kategoria ma taka strukture:
ids - autoincrement
Nazwa - nazwa kategorii

Podkategoria ma taka strukturę:
ids2 - autoincrement
nazwa2 - nazwa podkategorii
idso - nr kategorii nadrzędnej

W jaki sposób zbudować z tego drzewko?



Pozdrawiam i dziękuję za pomoc!!!
Tokone
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
ayeo
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 202
Pomógł: 117
Dołączył: 13.04.2007
Skąd: 127.0.0.1

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


Witam!

To jest zły sposób na drzewka. Zainteresuj się tzw Drzewkami Depesza winksmiley.jpg Jednak dzisiaj właśnie musiałem zrobić drzewko na podstawie takiej struktury. Jest na to kilka sposobów i każdy jest zły. Dodaj sobie jeszcze ścieżkę do tej tabeli. Tutaj funkcja, która zwraca właśnie ścieżkę:

  1. DROP FUNCTION IF EXISTS PATH;
  2.  
  3.  
  4. DELIMITER //
  5.  
  6. CREATE FUNCTION PATH( id INTEGER ) RETURNS VARCHAR(255)
  7. BEGIN
  8. DECLARE tmp INTEGER;
  9. DECLARE path VARCHAR(255);
  10.  
  11. SET @var := id;
  12. SET path = id;
  13.  
  14. WHILE( 1 = 1 ) DO
  15. SET tmp = (SELECT parent_id FROM tree WHERE id = @var );
  16. IF tmp THEN
  17. SET path = CONCAT(tmp,".",path);
  18. SET @var := tmp;
  19. ELSE
  20. RETURN path;
  21. END IF;
  22. END WHILE;
  23. END
  24.  
  25. //
  26.  
  27. DELIMITER ;


Kod nie jest najwyższych lotów, ale nie jestem mistrzem SQL biggrin.gif


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





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 12.02.2010

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


Dzięki wielkie za pomoc!

Pozdrawiam
tokone
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: 19.08.2025 - 13:13