Witam

jestem laikiem, mam jednak nadzieje ze początkującego nie zbesztacie,


zaczne od tego co chce osiągnąć :
1. chce osiągnąć taki kod, jest on mi potrzebny do menu : (kategorie i podkategorie):
  1. <script type="text/plain">{"children":[
  2. {"children":[{"children":[],"id":9000,"localizedName":"pokoje do wynajęcia"},
  3. {"children":[],"id":9008,"localizedName":"mieszkania i domy do wynajęcia"},
  4. {"children":[],"id":9073,"localizedName":"mieszkania i domy - sprzedam"},
  5. {"children":[],"id":9194,"localizedName":"działki"},
  6. {"children":[],"id":9074,"localizedName":"krótki termin i domki letniskowe"},
  7. {"children":[],"id":9072,"localizedName":"lokal i biuro"},
  8. {"children":[],"id":9071,"localizedName":"parking i garaż"},
  9. {"children":[],"id":9772,"localizedName":"kupię mieszkanie, dom, lokal, działkę"},
  10. {"children":[],"id":9773,"localizedName":"szukam mieszkania do wynajęcia"},
  11. {"children":[],"id":9774,"localizedName":"szukam pokoju do wynajęcia"}],
  12. "id":2,"localizedName":"Nieruchomości"},
  13.  
  14. {"children":[{"children":[],"id":9026,"localizedName":"samochody osobowe"},
  15. {"children":[],"id":9636,"localizedName":"części i akcesoria samochodowe"},
  16. {"children":[],"id":9027,"localizedName":"samochody dostawcze"},
  17. {"children":[],"id":9028,"localizedName":"motocykle i skutery"}],
  18. "id":5,"localizedName":"Motoryzacja"}],
  19. "id":0,"localizedName":"Wszystkie kategorie"}
  20. </script>



2. posiadam tablice kategoria i podkategoria:
  1.  
  2. CREATE TABLE IF NOT EXISTS `kategoria` (
  3. `katId` int(11) NOT NULL AUTO_INCREMENT,
  4. `katName` varchar(255) NOT NULL,
  5. PRIMARY KEY (`katId`)
  6. )
  7.  
  8. INSERT INTO `kategoria` (`katId`, `katName`) VALUES
  9. (1, 'PRACA'),
  10. (2, 'RÓŻNE'),
  11. (3, 'ODZIEŻ I BIŻUTERIA'),
  12. (4, 'TELEFONY'),
  13. (22, 'ANTYKI I SZTUKA'),
  14. (6, 'AGD I RTV'),
  15. (8, 'DOM I OGRÓD'),
  16. (9, 'DLA FIRMY'),
  17. (10, 'HANDEL I USŁUGI'),
  18. (11, 'ELEKTRONIKA'),
  19. (12, 'MOTORYZACJA'),
  20. (13, 'MUZYKA I EDUKACJA'),
  21. (14, 'NIERUCHOMOŚCI'),
  22. (15, 'TOWARZYSKIE'),
  23. (16, 'TURYSTYKA'),
  24. (17, 'ZDROWIE I URODA'),
  25. (18, 'FLORA I FAUNA'),
  26. (19, 'SPORT I HOBBY'),
  27. (20, 'ROLNICTWO'),
  28. (21, 'DLA DZIECI');
  29.  
  30. ===============================
  31. CREATE TABLE IF NOT EXISTS `podkategoria` (
  32. `idPod` int(9) NOT NULL AUTO_INCREMENT,
  33. `idKat` int(9) NOT NULL DEFAULT '0',
  34. `podName` varchar(255) NOT NULL DEFAULT '',
  35. `podST` int(5) NOT NULL DEFAULT '0',
  36. PRIMARY KEY (`idPod`),
  37. KEY `idKat` (`idKat`)
  38. )
  39.  
  40.  
  41. INSERT INTO `podkategoria` (`idPod`, `idKat`, `podName`, `podST`) VALUES
  42. (83, 3, 'Biżuteria', 1),
  43. (84, 1, 'Fizyczna', 1),
  44. (85, 6, 'Elektronika', 1),
  45. (86, 6, 'Sprzęt AGD', 1),
  46. (87, 6, 'Sprzęt audio', 1),
  47. (88, 6, 'TV i Video', 1),
  48. (89, 22, 'Antyki', 1),
  49. (90, 22, 'Kolekcje', 1),
  50. (91, 22, 'Sztuka', 1),
  51. (92, 22, 'Pozostałe', 1),
  52. (93, 8, 'Budownictwo', 1),
  53. (94, 8, 'Meble', 1),
  54. (101, 18, 'Psy', 1),
  55. ...
  56. (247, 0, 'Brak', 0);
  57.  


3. znalazłem przykład który mógł by pomoc jednak nie bardzo wiem co w nim poprawić, dlatego proszę o rade sugestie pomoc.

Podkreślam to jest przykład nie ma nic wspólnego z moimi danymi
  1.  
  2. var arry = [{ "Id": "1", "Name": "abc", "Parent": "", "attr": "abc" },
  3. { "Id": "2", "Name": "abc", "Parent": "1", "attr": "abc" },
  4. { "Id": "3", "Name": "abc", "Parent": "2", "attr": "abc" },
  5. { "Id": "4", "Name": "abc", "Parent": "2", "attr": "abc" }];
  6.  
  7. function convert(array){
  8. var map = {};
  9. for(var i = 0; i < array.length; i++){
  10. var obj = array[i];
  11. obj.items= [];
  12.  
  13. map[obj.Id] = obj;
  14.  
  15. var parent = obj.Parent || '-';
  16. if(!map[parent]){
  17. map[parent] = {
  18. items: []
  19. };
  20. }
  21. map[parent].items.push(obj);
  22. }
  23.  
  24. return map['-'].items;
  25.  
  26. }
  27.  
  28. var r = convert(arry)
  29. ?>


ten przyklad generuje kod:
  1. [{
  2. "Id" : "1",
  3. "Name" : "abc",
  4. "Parent" : "",
  5. "attr" : "abc",
  6. "children" : [{
  7. "Id" : "2",
  8. "Name" : "abc",
  9. "Parent" : "1",
  10. "attr" : "abc",
  11. "children" : [{
  12. "Id" : "3",
  13. "Name" : "abc",
  14. "Parent" : "2",
  15. "attr" : "abc",
  16. "children" : []
  17. }, {
  18. "Id" : "4",
  19. "Name" : "abc",
  20. "Parent" : "2",
  21. "attr" : "abc",
  22. "children" : []
  23. }]
  24. }]
  25. }]


niestety nie wiem jak zmodyfikowac ten przykład, by uzyskać to co chce czyli punkt 1 (kod prawidłowy)

prosze o radę, pomoc w tej sprawie.