Autor Zpráva
radekHH
Profil *
Načítám objemné XML a vybral jsem si proto XMLReader, který doufám zvládne otevírat XML i o desítkách megabajtů. XMLReader používám prvně a ikdyž jsem hledal, tak jsem nenašel to co potřebuji = snad to tak i funguje.

Jde mě o to, že data z XML chci načíst se strukturou, jakou soubor file.xml disponuje, abych pak mohl jednotlivé data si uložit do mySQL. Aktuální script mě strukturu "ignoruje". Poradíte?

  $reader = new XMLReader();
    if (!$reader->open("file.xml"))
    {
      die("Nelze otevřít soubor 'file.xml'");
    }
    
    
  while($reader->read())
    {
     $node = $reader->expand(); // zřejmě špatně použitý script -> expand();
     // zde potřebuji vypisovat strukturu XML, který budu ukládat do mySQL
     
    }
    
  $reader->close();
radekHH
Profil *
Poradí někdo?
Alphard
Profil
Nějaký příklad? Struktura uložitelná do sloupců v MySQL je plochá. K jednotlivým položkám se přece dokážete dostat, nebo co tou strukturou myslíte?

Doplňuji, kdyby byl náhodou přecejen problém v prostém čtení jednotlivých položek, podívejte se do diskuse v manuálu, hlavně na ir2.php.net/manual/en/xmlreader.read.php#61641
radekHH
Profil *
Struktura XML je taková:

<SHOP>
<SHOPITEM>
<PRODUCT>7-dílné ložní povlečení 90/120 cm</PRODUCT>
<ID_PRODUCT>10705</ID_PRODUCT>
<KOD>NB007-7-120-be-ovecka+drz</KOD>
<SORTIMENT>Kojenecké Nábytek| Soupravy do postýlky| Soupravy 7-dílné </SORTIMENT>
<SKLADEM>Ne</SKLADEM>
<SKLADOVOST>0</SKLADOVOST>
<DOD>NONE</DOD>
<VYROBCE>NEW BABY</VYROBCE>
<BARVA>Béžová</BARVA>
<VELIKOST> </VELIKOST>
<DESCRIPTION>Dětská souprava do postýlky 7-dílná. Obsahuje povlečení+výplň na  polštářek 40x60 cm + povlečení+výplň na peřinku 90x120 cm a mantinel, nebesa se šifónem, držák na  nebesa.  Materiál 100% bavlna, výplně antialergické vlákno.</DESCRIPTION>
<IMGURL_NO_WATER>10705_1.jpg</IMGURL_NO_WATER>
<CENA_DOPORUCENA>1467</CENA_DOPORUCENA>
<CENA_S_DPH>1125 /DPH 21</CENA_S_DPH>
<CENA_BEZ_DPH>929.75</CENA_BEZ_DPH>
<CENA_BEZ_DPH_EU>36.46</CENA_BEZ_DPH_EU>
<CENA_S_DPH_EU>44.12</CENA_S_DPH_EU>
</SHOPITEM>
</SHOP>

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: