WinFuture-Forum.de: Xml Struktur - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Xml Struktur Probleme bei der XML Struktur (Lösungsansatz vorhanden)


#1 Mitglied ist offline   Freidenker 

  • Gruppe: Mitglieder
  • Beiträge: 3
  • Beigetreten: 31. August 09
  • Reputation: 0

  geschrieben 31. August 2009 - 14:11

Ich versuche für folgende Liste eine XML Struktur zu erarbeiten: (fett = xml Daten)

Kundenliste

Berlin

Kunde: 1
Name: Böhme
Adresse: Mitte 2
Kunde: 2
Name: Schmidt
Adresse: Rasenweg 4

Dortmund

Kunde: 1
Name: Berger
Adresse: Westfahlenweg 4
----------------------------
Mein Lösungsansatz:

<kundenliste>
<bezeichnung>Kundenliste</bezeichnung>
<Ort id="Berlin">

<Kunden id="1">
<Name>Böhme</Name>
<Adresse>Mitte 2</Adresse>

</Kunden>

<Kunden id="2">
<Name>Schmidt</Name>
<Adresse>Rasenweg 4</Adresse>

</Kunden>
</Ort>

<Ort id="Dortmund">

<Kunden id="1">
<Name>Berger</Name>
<Adresse>Westfahlenweg 4</Adresse>
</Kunden>
</Ort>

</kundenliste>

Ich vermute, dass diese Struktur nicht funktioniert, weil bei Kunden und Ort eine id vorkommt? Weiß jemand mit etwas mehr xml Erfahrung wie ich eine Lösung zu dieser Problemstellung erarbeiten könnte?

MfG

freidenker.
0

Anzeige



#2 Mitglied ist offline   sibbl 

  • Gruppe: aktive Mitglieder
  • Beiträge: 377
  • Beigetreten: 30. Dezember 06
  • Reputation: 3
  • Wohnort:localhost

geschrieben 31. August 2009 - 14:44

also ich sehe da eigentlich kein Problem? Nur wieso ne Kunden-ID, wenn du die 1 zwei mal vergibst?
0

#3 Mitglied ist offline   Freidenker 

  • Gruppe: Mitglieder
  • Beiträge: 3
  • Beigetreten: 31. August 09
  • Reputation: 0

geschrieben 31. August 2009 - 14:56

Ich habe Probleme mit dem Auslesen - daher glaub(t)e ich dass es mit einer fehlerhaften XML Struktur zusammenhängt.

Mein Auslesealgorithmus:

$xml = simplexml_load_file('kundenliste.xml');

foreach(xml->Ort)
{
echo $xml-> Ort;
foreach(xml->Kunden)
{ echo -> $xml Kunden;
echo -> $xml Adresse;
}
}

Dieser Beitrag wurde von Freidenker bearbeitet: 31. August 2009 - 15:06

0

#4 Mitglied ist offline   sibbl 

  • Gruppe: aktive Mitglieder
  • Beiträge: 377
  • Beigetreten: 30. Dezember 06
  • Reputation: 3
  • Wohnort:localhost

geschrieben 31. August 2009 - 15:12

Ich hab jetzt kein PHP hier am Laufen und hoffe, dass du das jetzt nur schnell zusammengeschrieben hast und des net wirklich so aussieht (Syntax-Fehler, ... )
Aber ich habs mal eben schnell in C# ASP.NET dem Xml-Reader gegeben und bei dem funktionierts wunderbar
0

#5 Mitglied ist offline   K050V4 

  • Gruppe: aktive Mitglieder
  • Beiträge: 787
  • Beigetreten: 13. August 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Stuttgart
  • Interessen:(X)HTML<br />CSS2+<br />PHP 4/5<br />MySQL 5<br />Symfony 1.2+<br />JavaScript / AJAX<br />jQuery<br />C++<br />C#<br />Java<br />...

geschrieben 31. August 2009 - 15:17

Zitat

foreach(xml->Ort)

Wo ist das $ ?

Zitat

echo $xml-> Ort;

Ort ist ein Objekt mit mehreren Childs


Zitat

foreach(xml->Kunden)
{ echo -> $xml Kunden;
echo -> $xml Adresse;
}

$ ? Kunde ist ein Objekt und hat mehrere Childs...
Wieso -> vor dem Echo?


So müsst es gehen:

$xml = simplexml_load_file('kundenliste.xml');

foreach($xml->Ort as $ort)
{

foreach($ort->Kunde as $kunde) {
echo $kunde->Name;
echo '<br />';
echo $kunde->Adresse;
echo '<br /><br />';

}

}

Zitat

"In der Welt des Erkennbaren ist die Idee des Guten die höchste." - Platon

Spritify! Easy CSS-Sprite-Generator | Albanisch Deutsch Wörterbuch
0

#6 Mitglied ist offline   Freidenker 

  • Gruppe: Mitglieder
  • Beiträge: 3
  • Beigetreten: 31. August 09
  • Reputation: 0

geschrieben 31. August 2009 - 15:33

Beitrag anzeigenZitat (sibbl: 31.08.2009, 16:12)

Ich hab jetzt kein PHP hier am Laufen und hoffe, dass du das jetzt nur schnell zusammengeschrieben hast und des net wirklich so aussieht (Syntax-Fehler, ... )
Aber ich habs mal eben schnell in C# ASP.NET dem Xml-Reader gegeben und bei dem funktionierts wunderbar

Die Syntax sieht in meinem Dokument schon anders aus. (Habe beim Schreiben des Beitrags nicht so auf die Dollerzeichen unsw. geachtet.)

Zitat

$xml = simplexml_load_file('kundenliste.xml');

foreach($xml->Ort as $ort)
{

foreach($ort->Kunde as $kunde) {
echo $kunde->Name;
echo '<br />';
echo $kunde->Adresse;
echo '<br /><br />';

}

}

Der Denkanstoß ist aber wirklich hilfreich, jetzt bekomme ich wenigstens keine Fehlermeldung zurück!
Danke.
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0