Dzień Dobry
Na wstępie napiszę że problem z którym się borykam jest bardzo trudny do rozgryzienia (oczywiście dla mnie)
Od kilku dni próbuje z pliku XML, zaimportować dane do bazy danych w JOOMLA! (dokładnie VirtueMart). Skrypt, który sobie ułożyłem działa, czyli importuje dane tam gdzie chcę, lecz nie do końca.

W załącznikach mają Państwo wygląd bazy danych (2 różnych które dotyczą problemu)

A teraz do rzeczy problem polega na tym że mój xml nie ma powiązania pomiędzy kategoriami głównymi a kategoriami mu podporządkowanymi czyli (menu drzewo);

Pierwsza baza ("virtuemart_categories_pl_pl") do której pierw importuje wszystkie kategorie, bez względu na to czy jest to "menu" czy "pod menu" nie posiada AutoI na polu ID. Do niej trafia tylko nazwa z pliku xml.

Natomiast nie wiem jak zrobić, coś takiego aby w moim pliku xml Kategorie główną przyporządkować kategorii podrzędnej.

 

<?php
$plik = simplexml_load_file('action.xml') or die ("Nie wczytno pliku Pamiętaj plik musi sięnzaywać action.xml");
include ('base.php');
//$con = mysql_connect('localhost', 'root', '');
//mysql_select_db('XML');
?>
<a href="index.php">Start</a> || <a href="menu.php">Import Kategori</a>  ||  <a href="produkty.php">Import Produktów</a>
<?php

foreach($plik->GrupyTowarowe as $IdGrupy)
{          //wczytanie odpowiednich danych
       foreach($IdGrupy->GrupaGlowna as $dalej){
	   $ID = '_ID';
	   $IdG = $dalej['id'];
	   $NaGt = $dalej['nazwa'];

	   foreach($dalej->PodGrupy->PodGrupa as $menu){
	   
	   $IdMenu = $menu['id'];
	   $NazMenu = $menu['nazwa'];
	   $GG = $NaGt ."/". $NazMenu;
	 //wypisanie danych  
	 echo "<table CELLPADDING=10 CELLSPACING=10 BORDER=1><tr>";
	 echo"<td>". $IdG ."</td>";
	 echo"<td>". $IdMenu."</td>";
	 echo"<td>". $GG."</td>";
	 echo "</tr></table>";
	 //wpis do bazy
	     
		 $zapytanie = mysql_query("INSERT INTO `qom8d_virtuemart_categories_pl_pl`(`virtuemart_category_id`,`category_name`, `metadesc`) VALUES ('', '$GG', '$IdMenu')") or die (mysql_error());
         $result = mysql_query($zapytanie);

	    }

	 }

}
?>


<GrupyTowarowe>
    <GrupaGlowna id="GIP" nazwa="_Gadżety i Prezenty">
      <PodGrupy>
        <PodGrupa id="GIP-GAD" nazwa="Gadżety" />
        <PodGrupa id="GIP-GRY" nazwa="Gry" />
        <PodGrupa id="GIP-ZAB" nazwa="Zabawki" />
      </PodGrupy>
    </GrupaGlowna>
    <GrupaGlowna id="MAT" nazwa="_Materiały reklamowe">
      <PodGrupy>
        <PodGrupa id="MAT-REK" nazwa="Materiały reklamowe" />
      </PodGrupy>
    </GrupaGlowna>
    <GrupaGlowna id="AGA" nazwa="AGD - Akcesoria">
      <PodGrupy>
        <PodGrupa id="AGA-EKF" nazwa="Do ekspresów do kawy - filtry" />
        <PodGrupa id="AGA-EKO" nazwa="Do ekspresów do kawy - odkamieniacze" />
        <PodGrupa id="AGA-LAK" nazwa="Do lodówek - akcesoria" />
        <PodGrupa id="AGA-ODW" nazwa="Do odkurzaczy - worki" />
        <PodGrupa id="AGA-OKF" nazwa="Do okapów - filtry" />
      </PodGrupy>
    </GrupaGlowna>
</GrupyTowarowe> 

Jak teraz zrobić tak aby Pod grupa trafiła do danej Grupy głównej. Może trochę to wyjaśnie :)
Tam gdzie jest w pliku xml nazwa wszystko to trafia do 1 bazy w category_name, baza nie rozdaje sama nr więc nie wiem jak je dodać, potem musi byc tak w drugiej bzie że np

ID 234 = AGD - Akcesoria
ID 555 = Do ekspresów do kawy - filtry
ID 678 = Do odkurzaczy - worki

A w bazie nr 2

category_parent_id = 234

categopry_child_id = 555, 678 (to tylko tak aby było wizualnie wiadomo)

Jeśli ktoś zrozumiał o co tu namotałem to będę wdzięczny za pomoc.

Miłego Dnia

(od razu mówię że skrypt pisze dla siebie i mojego sklepu testowego nie pisze go mając na celu komercję!)