Ergebnis 1 bis 4 von 4
  1. #1
    Boskoop
    Themenstarter

    Registriert
    03.2010
    Beiträge
    38

    xml - Darstellung mehrerer "Tabellen"?

    Hallo!
    Ich möchte mir mit php eine Art Liste programmieren, die es mir ermöglicht meine DVDs im Überblick zu behalten, also zB wann gekauft/geschenkt bekommen, meine persönliche Bewertung, Sprachen, ... usw
    Die Daten möchte ich über ein xml File verwalten, da sich eine Datenbank sicher nicht auszahlt.
    Meine Frage ist jetzt:
    Kann ich es realisieren, wie in einem Datenbank Modell m:n Beziehungen aufzubauen? Ich möchte mir nämlich auch die bekannteren Schauspieler pro Film speichern, manche kommen aber mehrmals vor und spielen auch in mehreren Filmen.
    Mit einer Datenbank hätte ich kein Problem das darzustellen (mit allen Normalformen erfüllt) und ich kann mir auch einfache Sachen mit xml machen, aber da scheiterts.
    Oder scheitert auch xml dran? Bleibt mir dann nix anderes über als:
    Bsp:
    <movie>
    <title>blubb</title>
    <year>2000</year>
    <actor>a</actor>
    <actor>b</actor>
    ...
    </movie>

    Ich würds mir so vorstellen ein xml File zu erstellen, wo einfach alle actors gespeichert sind und die dann via ID reinzuholen...
    oder bin ich zu Datenbankverwöhnt und das geht gar nicht?

    Danke für Antworten + evtl. ein Link zu einer Erklärung, google hat nicht das ausgespuckt was ich gesucht habe

    lg

  2. #2
    Hildesheiner Goldrenette
    Registriert
    01.2010
    Beiträge
    680
    XML ist ein „rohes“ Format, dass Du eigentlich nach Deinen Bedürfnissen zurecht biegen kannst. Es weiß zunächst nichts von Beziehungen etc. wie es für ein RDBMS üblich ist. Es hindert dich aber nicht z. B. eine Beziehung zu erstellen:
    Code:
    <myMovieDB>
      <movies>
        <movie id="1">
          <title>Terminator</title>
          <year>1984</year>
          <actor id="1" as="The Terminator" />
        </movie>
      </movies>
      <actors>
        <actor id="1">
          <name>Arnold Schwarzenegger</name>
          <dateOfBirth>1947-06-30</dateOfBirth>
        </actor>
      </actors>
    </myMovieDB>
    Dann definierst du in einem XML Shema (XSD) in welcher Beziehung die einzelnen Elemente/IDs zueinander stehen. In deinem Programm musst Du natürlich das dann entsprechend Implementieren, also dass es für jeden Schauspieler den Namen etc. aus der anderen Tabelle heraussucht.

  3. #3
    Boskoop
    Themenstarter

    Registriert
    03.2010
    Beiträge
    38
    danke!! hast mir sehr geholfen
    lg

  4. #4
    Danziger Kant Avatar von karolherbst
    Registriert
    05.2007
    Ort
    Irgendwo
    Alter
    21
    Beiträge
    3.877
    Zitat Zitat von wdominik Beitrag anzeigen
    Code:
    <myMovieDB>
      <movies>
        <movie id="1">
          <title>Terminator</title>
          <year>1984</year>
          <actor id="1" as="The Terminator" />
        </movie>
      </movies>
      <actors>
        <actor id="1">
          <name>Arnold Schwarzenegger</name>
          <dateOfBirth>1947-06-30</dateOfBirth>
        </actor>
      </actors>
    </myMovieDB>
    leider fliegt dieses XML durch jeden Validator durch, da id ein globales Attribut ist und jede Belegung nur einmal vorkommen darf! Heißt, dieses XML ist falsch.

    Richtig wäre:

    Code:
    <myMovieDB>
      <movies>
        <movie>
          <id>1</id>
          <title>Terminator</title>
          <year>1984</year>
          <actor ref="1" as="The Terminator" />
        </movie>
      </movies>
      <actors>
        <actor>
          <id>1</id>
          <name>Arnold Schwarzenegger</name>
          <dateOfBirth>1947-06-30</dateOfBirth>
        </actor>
      </actors>
    </myMovieDB>
    http://www.zeit.de/2011/43/Peinlichk...omplettansicht

    MacBook Pro 15" Early 2011, Gentoo - unstable

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •