Народ, как можно правильно распарсить XML в разные таблицы MYSQL
function startElement($parser, $name, $attrs){
// ну тут чего делать с открывающим тегом
}
function endElement($parser, $name) {
// с закрыващим
}
function characterData($parser, $data) {
echo $data;
}
//создаем парсер
$xml_parser = xml_parser_create();
//определяем функции открывающего и закрывающего тегов
xml_set_element_handler($xml_parser, "startElement", "endElement");
//и данных
xml_set_character_data_handler($xml_parser, "characterData");
//отключаем включенный по умолчанию верхний регистр
xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING, false);
if (!($fp = fopen($link, "r"))) die("could not open XML input");
//собственно парсинг
while ($data = fread($fp, filesize($link)))
{
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)));
}
fclose($fp);
//не забываем очистить парсер
xml_parser_free($xml_parser);
то есть допустим <name> - INSERT в одну таблицу, а <category> - в другую...