I've never parsed XML with PHP, but it might help if you can show the
document that's breaking the parser, and also let us know if other
documents are working fine...
-Lorenzo
-Original Message-
From: Tomas Garcia Ferrari
Sent: Fri 11/9/2001 5:14 PM
To: [EMAIL PROTECTED]
Cc:
Subject: [PHP-DB] XML coming out from MySQL
Hello,
I'm trying to parse an XML file stored on MySQL. I'm using this
code:
?php
global $CFG, $ME;
$qid = db_query(
SELECT texto
FROM articulos
WHERE id = $id
);
$r = db_fetch_object($qid);
$file = $r-texto;
$map_array = array(
ARTICULO = ,
VOLANTA = h2,
TITULO = h1,
SUBTITULO = h3,
BAJADA = h2,
PARRAFO = p,
AUTOR = h3,
URL = h3,
COPY = h3
);
function startElement($parser, $name, $attrs) {
global $map_array;
if ($htmltag = $map_array[$name]) {
print $htmltag;
}
}
function endElement($parser, $name) {
global $map_array;
if ($htmltag = $map_array[$name]) {
print /$htmltag;
}
}
function characterData($parser, $data) {
print $data;
}
$xml_parser = xml_parser_create();
// use case-folding so we are sure to find the tag in
$map_array
xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING,
true);
xml_set_element_handler($xml_parser, startElement,
endElement);
xml_set_character_data_handler($xml_parser, characterData);
while ($data = $file) {
if (!xml_parse($xml_parser, $data, 0)) {
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);
?
and having this at the end of the outuput:
XML error: junk after document element at line 25
What does it mean? How can I solve it / trace it?
Regards,
Tomás
+-- --+
Tomás García Ferrari
Bigital
http://bigital.com/
+-- --+
--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail:
[EMAIL PROTECTED]