Ankündigung

Einklappen
Keine Ankündigung bisher.

Parser für XML in PHP

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Parser für XML in PHP

    Hallo zusammen

    Kann mir jemand sagen, wieso mein Parser nicht das macht, was er will? Eigentlich sollte er alles wunderschön auslesen und auch ordentlich darstellen... aber eben, sollte...

    Hier der Code:

    PHP-Code:
    <?php
                                
    // Umwandlungstabelle definieren
    $tag_tabelle = array(
      
    "STOCKQUOTES"        => "P",
      
    "STOCK"              => "P",
      
    "SYMBOL"             => "B",
      
    "LAST"               => "I",
      
    "DATE"               => "P",
      
    "TIME"               => "P",
      
    "CHANGE"             => "P",
      
    "OPEN"               => "P",
      
    "HIGH"               => "P",
      
    "LOW"                => "P",
      
    "VOLUME"             => "P",
      
    "MKTCAP"             => "P",
      
    "PREVIOUSCLOSE"      => "P",
      
    "PERCENTAGECHANGE"   => "P",
      
    "ANNRANGE"           => "P",
      
    "EARNS"              => "P",
      
    "P-E"                => "P",
      
    "NAME"               => "P"
    );

                                      
    // start_element() - wird vom XML-Parser bei öffnenden
                                // Tags aufgerufen
    function start_element$parser$name$attribute )
    {
                                
    // Umwandlungstabelle in den lokalen Scope holen
      
    global $tag_tabelle;

                                  
    // Testen, ob den aktuelle Tag in der Tabelle definiert ist
      
    if( isset( $tag_tabelle$name ] ) )
      {
                                    
    // öffnenden Tag ausgeben
        
    print "<" $tag_tabelle$name ] . ">";
      }
    }

                                
    // end_element() - wird vom XML-Parser bei schließenden
                                // Tags aufgerufen
    function end_element$parser$name )
    {
                                  
    // Umwandlungstabelle in den lokalen Scope holen
      
    global $tag_tabelle;

                                  
    // Testen, ob der aktuelle Tag in der Tabelle definiert ist
      
    if( isset( $tag_tabelle$name ] ) )
      {
                                    
    // Schließenden Tag ausgeben
        
    print "</" $tag_tabelle$name ] . ">";
      }
    }

                                
    // daten() - wird vom XML-Parser für CDATA-Bereiche aufgerufen
    function daten$parser$data )
    {
                                
    // Datenbereich ausgeben
      
    print $data;
    }

                                
    // Instanz des XML-Parsers erzeugen
    $parser xml_parser_create();

                                 
    // Parameter des XML-Parsers setzen
    xml_parser_set_option$parserXML_OPTION_CASE_FOLDINGtrue );

                                
    // Handler für Elemente ( öffnende / schließende Tags ) setzen
    xml_set_element_handler$parser"start_element""end_element" );
                                  
    // Handler für Daten ( CDATA ) setzen
    xml_set_character_data_handler$parser"daten" );

                                
    // Versuchen, die Datei zu öffnen
    if (! ( $fp fopen"http://www.webservicex.net/stockquote.asmx/GetQuote?symbol=NESN.VX""r" ) ) )
    {
                                  
    // Fehler -> Ausführung abbrechen
      
    die( "XML Fehler: Konnte Datei nicht öffnen." );
    }

                                
    // Datei zeilenweise auslesen
    while( $data fread$fp4096 ) )
    {
                                  
    // Versuchen, die aktuelle Zeile zu parsen
      
    if( !xml_parse$parser$datafeof$fp ) ) )
      {
                                   
    // Fehler -> Ausführung abbrechen
        
    die(  "XML Fehler: " .
              
    xml_error_stringxml_get_error_code$parser ) ) .
              
    " in Zeile " .
              
    xml_get_current_line_number$parser )
           );
      }
    }

                                
    // Vom XML-Parser belegten Speicher freigeben
    xml_parser_free$parser );
    ?>
    Die Datei ist hier zu finden: http://deny.pytalhost.com//parser.php

    Den Parser habe ich von hier:
    http://www.heise.de/ix/artikel/2001/04/201/01.shtml

    Mit der Datei von ihnen klappt es bei mir auch. Doch wenn ich den Link der Seite eingebe, welche ich parsen will, dann funzt die Darstellung nicht mehr. Wo liegt der Fehler?

    Vielen Dank.



    PS: Wenn ich die XML-Seite in eine Datei speichere, und den Parser dann laufen lasse, funktioniert alles einwandfrei. Warum das? Kann ich es auch online zum Laufen bringen?
    Zuletzt geändert von zockerwurf; 29.01.2008, 10:33.

  • #2
    AW: Parser für XML in PHP

    ohne genaue fehlerbeschreibung kann ich dir da nicht weiterhelfen....
    AC/DC Fanpage www.ifyouwantblood.de
    Nein zur Zensur im Internet und anderswo - Anonymous

    Kommentar

    homepage-forum.de - Hilfe für Webmaster! Statistiken

    Einklappen

    Themen: 57.199   Beiträge: 432.310   Mitglieder: 29.591   Aktive Mitglieder: 44
    Willkommen an unser neuestes Mitglied, PatX.

    Online-Benutzer

    Einklappen

    850 Benutzer sind jetzt online. Registrierte Benutzer: 3, Gäste: 847.

    Mit 4.707 Benutzern waren am 12.01.2023 um 03:07 die meisten Benutzer gleichzeitig online.

    Die neuesten Themen

    Einklappen

    • PatX
      Design Hilfe zu einer Form die ein PHP Script triggert
      Ich würde mich über eure Meinung zu dem folgenden Szenario freuen:

      Ich möchte ein Formular einrichten, das im Wesentlichen die folgenden Schritte triggert:
      - Ein PHP-Skript ausführen
      - Formulardaten in die WordPress-Datenbank meiner Website speichern
      - KEINE anderen...
      Heute, 07:20
    • Reservespieler
      Website pflegen
      Ein freundliches Hallo an alle,
      Ich würde gerne von meinem Verein die Pflege der Website übernehmen da es auch einige Vorteile als aktives Mitglied hat. Das Problem ist nur das ich überhaupt keine Ahnung davon habe.
      Daher hier meine Frage:
      Wie funktioniert sowas und was muss ich...
      18.03.2023, 16:48
    • bodan
      OpenAI kommt mit GPT-4: das System hat dazugelernt - nun noch mehr Leistung an Bord
      das GPT-4-Modell ist da....am 14. März 2023 erschien offiziell die Version 4.0 von GPT, welche auch die Fähigkeiten von ChatGPT erweitern soll.


      ...was das GPT-4-Modell bereits beherrscht:


      Ausbau des Umfangs - ein noch höherer Umfang an Worten: - die V. 4 verarbeitet...
      17.03.2023, 20:16
    • Townable
      Townable - Plattform für Lokale Angebote


      Hallo, ich würde hier gerne ein Projekt vorstellen, an welchem ich schon sehr lange arbeite und es jetzt endlich live ist. Townable ist ein Projekt, was es bis heute so noch nicht gibt. Mit Townable möchten wir den Lokalen Handel unterstützen und Unternehmen die Möglichkeit bieten,...
      17.03.2023, 13:36
    • Sprueche
      Monetag erzielt beeindruckende Gewinne im Vergleich zu Google-AdSense
      Hallo liebe Leute,

      ich möchte euch Monetag wirklich ans Herz legen. Diese Plattform bietet euch die Möglichkeit, deutlich mehr Geld zu verdienen als mit Google-AdSense. Darüber hinaus könnt ihr bereits ab einem Guthaben von 5 Euro eine Auszahlung beantragen, die ihr dann bequem per...
      15.03.2023, 17:34

    Die neuesten Beiträge

    Einklappen

    • PatX
      Design Hilfe zu einer Form die ein PHP Script triggert
      Ich würde mich über eure Meinung zu dem folgenden Szenario freuen:

      Ich möchte ein Formular einrichten, das im Wesentlichen die folgenden Schritte triggert:
      - Ein PHP-Skript ausführen
      - Formulardaten in die WordPress-Datenbank meiner Website speichern
      - KEINE anderen...
      Heute, 07:20
    • Testie
      Antwort auf Ich will nächstes Jahr 'Go Live' gehen, daher brauch ich 'Versuchskaninchen' :-)
      Oh Mann, hab nen ganzen Text geschrieben und jetzt wurde nur der erste Satz übernommen…
      Gestern, 17:09
    • Testie
      Antwort auf Ich will nächstes Jahr 'Go Live' gehen, daher brauch ich 'Versuchskaninchen' :-)
      Hallo Megabyte, ich finde die Seite schon klasse. Habe gerade ein wenig gestöbert....
      Gestern, 17:08
    • Townable
      Townable - Plattform für Lokale Angebote


      Hallo, ich würde hier gerne ein Projekt vorstellen, an welchem ich schon sehr lange arbeite und es jetzt endlich live ist. Townable ist ein Projekt, was es bis heute so noch nicht gibt. Mit Townable möchten wir den Lokalen Handel unterstützen und Unternehmen die Möglichkeit bieten,...
      17.03.2023, 13:36
    • arnego2
      Antwort auf Townable - Plattform für Lokale Angebote
      Gibt es nicht?
      Nun ja sehr gut hast du nicht recherchiert. Es gibt alle möglichen Plattformen die deinen Plan schon vor Jahren umgesetzt haben.
      Das sollte dich nicht davon abhalten es durchzuziehen.
      Viel Fiend viel Ehr

      Warum du Deutsche Kunden mit einem Englischen...
      19.03.2023, 15:05
    • Reservespieler
      Website pflegen
      Ein freundliches Hallo an alle,
      Ich würde gerne von meinem Verein die Pflege der Website übernehmen da es auch einige Vorteile als aktives Mitglied hat. Das Problem ist nur das ich überhaupt keine Ahnung davon habe.
      Daher hier meine Frage:
      Wie funktioniert sowas und was muss ich...
      18.03.2023, 16:48
    • Localfu
      Antwort auf Website pflegen
      Hi Reservespieler​, ich finde gut das Jemand die Öffentlichkeitsarbeit vom Verein übernimmt. Es ist immer ratsam Fachbücher zu holen und/oder Lernvideos. Zu FTP: Das File Transfer Protokoll dient dazu Daten vom Computer auf dem Webserver hochzuladen. Hier bietet sich Filezilla an. Es ist eine sehr...
      18.03.2023, 22:55
    • bdt600
      Antwort auf Website pflegen
      Wenn du die Pflege übernehmen willst, heißt das ja, dass eine Webseite existiert. Also musst du dich zuerst mal schlau machen, womit die Seite aufgebaut wurde. Und dann musst du dich entsprechend einarbeiten, was mit null Ahnung gerade am Anfang nicht gerade leicht wird.
      18.03.2023, 18:42
    • Townable
      Antwort auf Townable - Plattform für Lokale Angebote
      Hallo Ingo danke für dein Feedback ich werde mich darum kümmern. Dies sind solche Sachen wo externes Feedback sehr viel wert ist. Ich habe mir bezüglich dieses Formulars, zusammen mit einem bekannten schon sehr den Kopf darüber zerbrochen. Ursprünglich war es so gedacht, dass das Feld hidden...
      18.03.2023, 12:11
    • Ingo
      Antwort auf Townable - Plattform für Lokale Angebote
      Hi,
      das Formular zur Ortseingabe sollte überarbeitet werden.
      Gebe ich nur bei Postleitzahl die Postleitzahl ein, verlangt das Programm unsinniger Weise noch den Ort.
      Gebe ich aber bei der Ortseingabe die Postleitzahl ein, wird der Ort gelistet und die Postleitzahl in das nächste...
      18.03.2023, 10:45
    Lädt...
    X