Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Dodawanie danych do tablicy rekursywnej, w odpowiednie miejsce
Sztef89
post
Post #1





Grupa: Zarejestrowani
Postów: 60
Pomógł: 0
Dołączył: 6.12.2010

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


Witam, próbuje zrobić wyświetlanie komentarzy z opcją rodzic/dziecko czyli komentarz i odpowiedzi do nich. Google podpowiada że trzeba użyć tablic rekursywnych aby wygenerować drzewo komentarzy. Niestety z takimi tablicami nie miałem okazji się bawić do tej pory.

Mam taką tablicę:

  1. $dane = array ( "14" => array ("ID" => "14", "PARENT" => "0", "18" => array ("ID" => "18", "PARENT" => "14"),"19" => array ("ID" => "19", "PARENT" => "14")), "24" => array ("ID" => "14", "PARENT" => "0"));
  2.  
  3. print_r($dane);


  1. Array
  2. (
  3. [14] => Array
  4. (
  5. [ID] => 14
  6. [PARENT] => 0
  7. [18] => Array
  8. (
  9. [ID] => 18
  10. [PARENT] => 14
  11. )
  12.  
  13. [19] => Array
  14. (
  15. [ID] => 19
  16. [PARENT] => 14
  17. )
  18.  
  19. )
  20.  
  21. [24] => Array
  22. (
  23. [ID] => 14
  24. [PARENT] => 0
  25. )
  26.  
  27. )


Chciałbym dołączać dane do tej tablicy w pętli while po pobraniu danych z bazy.

I teraz pojawia się pytanie: Jak dodać np. do 24 kolejne dziecko ? Albo jak dodać do 19 dziecko ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Sztef89
post
Post #2





Grupa: Zarejestrowani
Postów: 60
Pomógł: 0
Dołączył: 6.12.2010

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


Nom ale to nadal 2 zapytania. Czyli się nie da odczytać wartość AI tej kolumny podczas robienia INSERTa ?
Oczywiście założyłem w algorytmie wyświetlającym ze jak przekroczy ileś tam to nie robi już większego marginesu (IMG:style_emoticons/default/smile.gif)

Jestem nowy w tym temacie, na razie w moim pomyślę nie widzę żadnych wad. Mógłbyś napisać coś więcej dlaczego jesteś przeciwny takim drzewom ?


Udało mi się zrobić to na jednym zapytaniu:
  1. INSERT INTO `komentarz` (`key`, `deph`, `tresc`) SELECT MAX(id)+1, 0, '$tresc' FROM komentarz


--
Robię system komentarzy do pracy inżynierskiej. Za jakieś dwa dni skończę i będziecie mogli zobaczyć jak działa (IMG:style_emoticons/default/smile.gif) Jak będą chętni to zamieszczę linka aby zobaczyć jak powyższe rozwiązania działają w praktyce (IMG:style_emoticons/default/smile.gif)

Ten post edytował Sztef89 11.12.2011, 17:25:47
Go to the top of the page
+Quote Post
marins
post
Post #3





Grupa: Zarejestrowani
Postów: 47
Pomógł: 4
Dołączył: 12.07.2003

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


Cytat(Sztef89 @ 11.12.2011, 15:26:51 ) *
Mógłbyś napisać coś więcej dlaczego jesteś przeciwny takim drzewom ?

Wówczasz dla mnie całość jest nieczytelna - nie lubię jak mi coś lata prawo lewo. Łatwo zgubić wątek - rozwiązanie ze zwykłą listą jest przejrzyste (wizualnie).
Nie widzę sensu wątkowania - to nie forum (IMG:style_emoticons/default/biggrin.gif)

Go to the top of the page
+Quote Post

Posty w temacie


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: 12.10.2025 - 10:10