Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][XML][PHP]Wczytanie pliku
madsix
post 15.03.2013, 12:10:47
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 11.03.2013

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


Witam mam taki problem mam plik xml o takiej strukturze to jest tylko przykład struktury

Kod
<?xml version="1.0" encoding="utf-8" ?>
<katalog>(główny węzeł tzw. Korzeń)
<GrupyTowarowe>(rozpoczyna się lista grup)
<GrupaGlowna id="SIE"(id grupy) nazwa="Sieci"(nazwa grupy)> (grupa główna)
<PodGrupy>(rozpoczyna się lista podgrup)
<PodGrupa id="SIE-BAK"(id podgrupy) nazwa="AccesPoint"(nazwa podgrupy) />
</PodGrupy> (zamkniecie listy podgrup)
</GrupaGlowna> (zamkniecie grupy)
</GrupyTowarowe> (zamkniecie listy grup towarowych)
<producenci>(lista producentów)
<producent id="TEL"(id producenta) nazwa="Telegaertner" (nazwa producenta) />
<producent id="TER" nazwa="TERRATEC" />
<producent id="THE" nazwa="Thermaltake" />
<producent id="XPE" nazwa="XpertVision" />
<producent id="YAD" nazwa="Yamada" />
</producenci> (zamkniecie listy producentów)
<produkty> (lista produktów)
<produkt id="SIEEDIBAK0006" (kod produktu)
nazwa="EDIMAX (EW-7203APG) Acces Point 54Mbps 802.11g, 1xLAN" (nazwa produktu)
producent="EDI" (kod producenta)
grupa="SIE-BAK"(kod grupy)
cena_netto="153.03"(cena netto)
vat="23"(stawka podatku  vat)
cena_sugerowana="190.00"[Parametr opcjonalny]( sugerowana cena detaliczna z VAT)
data="2005-02-25"(data dodania produktu do oferty action)  gwarancja="G024M"(oznaczenie czasu gwarancji)
dostepny="25"(obecny stan magazynowy dla liczby <= 30 lub napis ponad 30 dla liczby >30)
na_zamowienie="N"(produkt na zamówienie)
oferta_specjalna="N">(produkt w ofercie specjalnej)
mala_paleta="N”(czy produkt może być wysłany na małej palecie)
large="N” > (czy produkt jest towarem wielkogabarytowym)
<zdjecia> (zdjecia)
<zdjecie
plik="/Pictures/SIE/BAK/ SIEEDIBAK0006/1.jpg"(ścieżka do pliku, używana przy wywoływaniu zdjęć)
domyslne="1"(zdjęcie domyślne)
data="2006-12-01"(data dodania zdjęcia) />
   </zdjecia> (koniec listy zdjęć)
    <technika> (opis techniczny)
(parametry techniczne)
<parametr
nazwa="Prędkość maksymalna"
opis="Wi-Fi 54Mbps ( 18 dBm, RP-SMA odłączalna Antena x 1), 1xRJ45"
jm="" (jednosta miary w jakiej podawany jest parametr, gdy jm=”www” to parametr jest linkiem do strony www)
typ="varchar"  />
</technika> (zamkniecie opisu technicznego)
</produkt> (zamknięcie produktu)
</produkty> (zamknięcie listy produktów)
</katalog> (końcowy znacznik tego dokumentu xml)



501 577 551  michał



Tutaj zamieszczam kawałek XML gotowego

Kod
  <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>
    <GrupaGlowna id="AGD" nazwa="AGD - Produkty">
      <PodGrupy>
        <PodGrupa id="AGD-AKC" nazwa="Akcesoria" />
        <PodGrupa id="AGD-CHL" nazwa="Automaty do pieczenia chleba" />
        <PodGrupa id="AGD-BAT" nazwa="Baterie kuchenne" />
        <PodGrupa id="AGD-LOZ" nazwa="Chłodziarko-zamrażarki do zabudowy (lodówki)" />
        <PodGrupa id="AGD-LOW" nazwa="Chłodziarko-zamrażarki wolnostojące (lodówki)" />
        <PodGrupa id="AGD-CZE" nazwa="Czajniki elektryczne" />
        <PodGrupa id="AGD-DEP" nazwa="Depilatory" />
        <PodGrupa id="AGD-DES" nazwa="Deski do prasowania" />
        <PodGrupa id="AGD-DZF" nazwa="Dzbanki filtrujące" />
        <PodGrupa id="AGD-EXP" nazwa="Ekspresy do kawy" />
        <PodGrupa id="AGD-EXZ" nazwa="Ekspresy do kawy - do zabudowy" />
        <PodGrupa id="AGD-FRY" nazwa="Frytkownice" />
        <PodGrupa id="AGD-GAR" nazwa="Garnki / patelnie" />
        <PodGrupa id="AGD-GOL" nazwa="Golarki" />
        <PodGrupa id="AGD-GRE" nazwa="Grille elektryczne" />
        <PodGrupa id="AGD-GRO" nazwa="Grzejniki olejowe" />
        <PodGrupa id="AGD-JAJ" nazwa="Jajowary" />
        <PodGrupa id="AGD-KMB" nazwa="Kombiwary" />
        <PodGrupa id="AGD-KRA" nazwa="Krajalnice" />
        <PodGrupa id="AGD-KMZ" nazwa="Kuchenki mikrofalowe do zabudowy" />
        <PodGrupa id="AGD-KMW" nazwa="Kuchenki mikrofalowe wolnostojące" />
        <PodGrupa id="AGD-KWZ" nazwa="Kuchnie do zabudowy" />



A oto mój plik php który ma za zadanie odczyt tego shitu

Kod
<?php
$xml = simplexml_load_file('action.xml');

      foreach($xml->GrupyTowarowe as $gg){
            $idGrupy = $gg->GrupaGlowna['id'];
            $nazwaGrupy = $gg->GrupaGlowna['nazwa'];
        }

echo $idGrupy ." - ". $nazwaGrupy;
?>


Z czym mam problem a otóż z tym że tylko wyświetla pierwszą grupę (<GrupaGlowna id="GIP" nazwa="_Gadżety i Prezenty") reszty nie wczytuje i nie wyświetla, oraz chce się dostać do <PodGrupy> i tez nie mogę próbowałem robić pętle w pętli (forach) kombinowałem np z $idGrupy = $gg->GrupaGlowna->PodGrupy['id']; i takie tam i nic, przykłady brane z manuala więc nie potrzebny mi do niego link, mam się bawić z tym simpleXMl czy brać pod uwagę coś innego?
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 Wersja Lo-Fi Aktualny czas: 13.08.2025 - 23:04