Hallo!
Ich bin recht neu bei PHP, habe aber erfolgreich einen XML-Parser gebaut.
Der geht bei mir auch einwandfrei, wenn er aber auf einem anderen Server liegt und von dort aus auf eine XML-Datei zurückgreift, die unter meiner Domain liegt, produziert er erst folgende Fehlermeldung dreimal, bevor er die Ausgabe aber dann doch richtig macht:
	
		
In Zeile 144 finde ich aber nichts böses: 
	
 ...
Mein Parser-Script sieht so aus:
	
Es gibt in meinem Skript keine Funktion 
	
Was habe ich falsch gemacht, oder besser: was ist der Unterschied zwischen zwei Servern?  
 
Helft mir bitte...
Thanx!
bossman
					Ich bin recht neu bei PHP, habe aber erfolgreich einen XML-Parser gebaut.
Der geht bei mir auch einwandfrei, wenn er aber auf einem anderen Server liegt und von dort aus auf eine XML-Datei zurückgreift, die unter meiner Domain liegt, produziert er erst folgende Fehlermeldung dreimal, bevor er die Ausgabe aber dann doch richtig macht:
			
			
				Warning: Unable to call handler () in ... on line 144
			
		
	PHP-Code:
	
	
xml_parse($parser, $str); 
Mein Parser-Script sieht so aus:
PHP-Code:
	
	
 function startElement ($parser, $element_name) {
    switch ($element_name) {
        case "NETZWERK" : echo ("\n"); break;
        case "MITGLIED" : echo ("html "); break;
        case "URL"        : echo ("html"); break;
        case "NAME_KURZ": echo (""); break;
        case "NAME_LANG": echo (""); break;
    }
}
    
function endElement ($parser, $element_name) 
{
    switch ($element_name) 
    {
        case "NETZWERK" :    echo ("\n"); break;
        case "MITGLIED" :    echo ("html"); break;
        case "URL"        :    echo ("html">"); break;
        case "NAME_KURZ":     echo ("</a>"); break;
        case "NAME_LANG":    echo (""); break;
    }
}
function cdata ($parser, $data) 
{    
    echo ($data);
}
//der XML-Parser wird erstellt
$parser=xml_parser_create();
            
xml_set_element_handler($parser, "startElement", "endElement");
xml_set_character_data_handler($parser, "cdata");
xml_set_default_handler ($parser, "");
//XML-Datei wird geöffnet und zeilenweise ausgelesen
$fhandle=fopen("http://www.meinedomain.de/netzwerk/netzwerk_wrs.xml", "r");
while (!feof($fhandle)) 
{
    $str = fgets($fhandle, 1000);
//Dies ist jetzt die Zeile, die die Fehlermeldung nennt:    
xml_parse($parser, $str);
    
    //Fehlerbehandlung
    $ecode=xml_get_error_code($parser);
    if ($ecode !=0) 
    {
        die ("<script>alert('Ein Fehler ist aufgetreten:".xml_error_string($ecode)."');</script>");
    }
}
    
fclose($fhandle);
xml_parser_free ($parser); 
PHP-Code:
	
	
handler(); 
 
 Helft mir bitte...
Thanx!
bossman
 
          


 
 
Kommentar