Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z array
Forum PHP.pl > Forum > PHP
komar07
Witam

Mam mały problemi a array a raczej z umieszczeniem wartosci tego arraya w bazie danych. Moze najpierw kod a pozniej tlumaczenie.

print_r array

Kod
Array
(
   [0] => Array
       (
           [name] => Kategoria 1
           [display-name] => Kategoria 1
           [attrs] => Array
               (
                   [id] => ID Kategoria 1
               )

       )

   [1] => Array
       (
           [name] => Kategoria 2
           [display-name] => Kategoria 2
           [attrs] => Array
               (
                   [id] => ID Kategoria 2
               )

           [sub-categories] => Array
               (
                   [0] => Array
                       (
                           [name] => Kategoria 2-1
                           [display-name] => Kategoria 2-1
                           [attrs] => Array
                               (
                                   [id] => ID Kategoria 2-2
                               )

                       )

                   [1] => Array
                       (
                           [name] => Kategoria 2-2
                           [display-name] => Kategoria 2-2
                           [attrs] => Array
                               (
                                   [id] => ID Kategoria 2-2
                               )

                           [sub-categories] => Array
                               (
                                   [0] => Array
                                       (
                                           [name] => Kategoria 2-2-1
                                           [display-name] => Kategoria 2-2-1
                                           [attrs] => Array
                                               (
                                                   [id] => ID Kategoria 2-2-1
                                               )

                                       )

                               )

                       )

               )

       )

)


kod php array

  1. <?php
  2.  
  3. $result = array('0' => array(
  4.        'name' => 'Kategoria 1',
  5.        'display-name' => 'Kategoria 1',
  6. 'attrs' => array('id' => 'ID Kategoria 1')),
  7.        '1' => array(
  8.        'name' => 'Kategoria 2',
  9.        'display-name' => 'Kategoria 2',
  10. 'attrs' => array('id' => 'ID Kategoria 2'),
  11. 'sub-categories' => array('0' => array('name' => 'Kategoria 2-1',
  12.        'display-name' => 'Kategoria 2-1',
  13. 'attrs' => array('id' => 'ID Kategoria 2-2')), 
  14.                                     '1' => array('name' => 'Kategoria 2-2',
  15.        'display-name' => 'Kategoria 2-2',
  16. 'attrs' => array('id' => 'ID Kategoria 2-2'),
  17. 'sub-categories' => array('0' => array('name' => 'Kategoria 2-2-1',
  18.        'display-name' => 'Kategoria 2-2-1',
  19. 'attrs' => array('id' => 'ID Kategoria 2-2-1')))))));
  20.  
  21. ?>


wytlumaczenie

Wszystko co wyzej przedtsawilem jest to przykladowa struktura drzewa kategorii pasazu onetu jaki otrzymuje po z nusoap. Problem oplega na tym ze chce te wszystkie kategorie umiescic w swojej bazie danych ktora przedstawia sie nastepujaco


cat_id - id w mojej bazie
cat_parent_id - id kategori "rodzica"
cat_onet_name - nazwa kategorii (z arraya $result['display-name'])
cat_onet_id - id kategorii w onecie (z arraya $result['attrs']['id'])

i wlasnie tu jest problem bo funckja ktora napisalem strasznie wszystko partaczy tzn nie zachowuje cherarchi kategorii

kod:

  1. <?php
  2.  
  3. function b($arrays_B, $parent_id = 0) {
  4. for ($i = 0; $i<sizeof($arrays_B); $i++) {
  5.  
  6. if($arrays_B[$i]['display-name'] != '' && $arrays_B[$i]['attrs']['id'] != '') {
  7.         
  8. // dodanie do bazy                   
  9.                          
  10.   if(is_array($arrays_B[$i]['sub-categories'])) {
  11.   $parent_id = mysql_insert_id();
  12.   b($arrays_B[$i]['sub-categories'], $parent_id);
  13.   } 
  14.   
  15. }
  16. }
  17. }
  18.  
  19. ?>


Jak ktos ma jakis pomysl to prosze o pomoc bo mi juz skonczyly sie pomysly z gory dziekuje.
Soulik
Jeżeli rozwiązałeś swój problem, proszę podziel się działającym kodem.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.