ID: 34591 Updated by: [EMAIL PROTECTED] Reported By: priit at ww dot ee -Status: Open +Status: Feedback Bug Type: XML related Operating System: Windows XP SP2 PHP Version: 5.0.5 New Comment:
Well, then try to provide really complete reproduce script? I doubt that "$file = 'failid/kontakt.xml'; .." will work without the .xml file. Previous Comments: ------------------------------------------------------------------------ [2005-09-22 13:37:50] priit at ww dot ee ... ------------------------------------------------------------------------ [2005-09-21 23:38:27] priit at ww dot ee charset has nothing to do with it. I tried converting the input to latin1 first and utf8 and changed the xml_parser_create charset accordingly, but the result was the same always! the characters in my example xml are compatible with ISO-8859-1 although the xml input it sayd to be ISO-8859-15 ... if I changed the xml itself also to something else the result was still the same. ------------------------------------------------------------------------ [2005-09-21 23:35:56] priit at ww dot ee <?php $file = 'failid/kontakt.xml'; function startElement($parser, $name, $attrs) { global $temp_name; $temp_name = $name; } function endElement($parser, $name) { global $temp_name,$temp_value,$moodul; if($temp_name==$name) {$moodul .= "($temp_name : $temp_value)\n";} } function characterData($parser, $data) { global $temp_value; $temp_value = $data; } $moodul = '<PRE>'; $xml_parser = xml_parser_create('ISO-8859-1'); xml_set_element_handler($xml_parser, "startElement", "endElement"); xml_set_character_data_handler($xml_parser, "characterData"); if (!($fp = fopen($file, "r"))) { die("could not open XML input"); } $data = fread($fp, filesize($file)); if(!xml_parse($xml_parser, $data, feof($fp))) { 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); $moodul .= '</PRE>'; echo $moodul; ?> ------------------------------------------------------------------------ [2005-09-21 23:17:34] [EMAIL PROTECTED] Try using compatible charset. ------------------------------------------------------------------------ [2005-09-21 23:15:36] priit at ww dot ee using php code: $xml_parser = xml_parser_create('ISO-8859-1'); xml_set_element_handler($xml_parser, "startElement", "endElement"); xml_set_character_data_handler($xml_parser, "characterData"); $data = fread($fp, filesize($file)); if(!xml_parse($xml_parser, $data, feof($fp))) { 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); ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/34591 -- Edit this bug report at http://bugs.php.net/?id=34591&edit=1