SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

PHP 5.3 & MySQL 5.1

PHP 5.3 & MySQL 5.1 zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 03.05.2003, 12:29:53
MichaelR MichaelR ist offline
Anfänger
 
Registriert seit: Jun 2002
Beiträge: 13
MichaelR befindet sich auf einem aufstrebenden Ast
XML auslesen und als Array zurückgeben klappt nicht ...

Hallo,

über include binde ich eine php Datei ein, die folgende XML Funktionen enthält:

$inTag = false;
$Tag = '';
$aQuestions = array();
$x = 0;

function XML_Read_QuizSet($XML_File){
global $aQuestions, $x;

$xml_parser = xml_parser_create();
xml_set_element_handler($xml_parser, "QuizSet_StartTag", "QuizSet_EndTag");
xml_set_character_data_handler($xml_parser, "QuizSet_Data");
xml_parse($xml_parser, $XML_FILE)
or die (sprintf("XML error: %s at line %d", xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
xml_parser_free($xml_parser);

return $aQuestions;
}

// ROUTINES
function QuizSet_StartTag($parser, $tagName, $attrs){
global $inTag, $Tag;

if ($inTag == true){
$Tag = $tagName;
}
elseif ($tagName == 'QUESTION'){
$inTag = true;
}
}

function QuizSet_EndTag($parser, $tagName){
global $inTag, $Tag, $x;

if ($tagName == 'QUESTION'){
$x++;
$inTag = false;
}
}

function QuizSet_Data($parser, $data){
global $inTag, $Tag, $aQuestions, $x;

if ($inTag == true){
$aQuestions[$x] .= $data;
}
}


Die Funktion XML_Read_QuizSet() bekommt die XML Struktur als String übergeben, soll diesen auslesen, die Daten in ein einfaches Array ($aQuestions) schreiben und das Array dann wieder zurückgeben.

Das geht aber nicht, d.h. es wird gar nichts vom übergebenen XML ausgelesen, geschweige denn dann zurückgegeben (nur ein leerer string wird returned) ???

Wenn ich den Inhalt der Funktion XML_Read_QuizSet() einfach außerhalb einer Funktionsklammer {} schreibe, dann geht alles wunderbar; nur bei obiger Form nicht; es scheint als würden die Funktionen QuizSet_EndTag(), QuizSet_StartTag() und QuizSet_Data() nicht gefunden werden - wenn ich dort ein print "<script>alert()</script>"; reinsetze müsste eigentlich bei jedem XML Element [<question>bla bal bal </question>] ein alert auftauchen, tut's aber nicht.

Findet jemand den Fehler ??

Danke + Grüße
Michael
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 03:54:42 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.


© 2001-2017 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt