} function getSubsubcategorias($categoria, $subcategoria) { $consultaSubsubcategorias = mysql_query("SELECT * FROM subsubcategorias WHERE categoria='{$categoria}' AND subcategoria='{$subcategoria}'"); $xml = ""; while ($filaSubsubcategoria = mysql_fetch_array($consultaSubsubcategorias)) { $xml .= '<subsubcategoria nombre="' . $filaSubsubcategoria['nombre'] . '" pos="' . $filaSubsubcategoria['posicion'] . '">'; $xml .= '</subsubcategoria>'; } mysql_free_result($consultaSubsubcategorias); return $xml; } function creacionXmlMenu() { $consultaCategorias = mysql_query("SELECT * FROM categorias"); $xml = '<?xml version="1.0"?>'; $xml .= '<menu>'; while ($filaCategoria = mysql_fetch_array($consultaCategorias)) { $xml .= '<categoria nombre="' . $filaCategoria['nombre'] . '" pos="' . $filaCategoria['posicion'] . '">'; //$xml .= getSubcategorias($filaCategoria['posicion']); $xml .= '</categoria>'; } mysql_free_result($consultaCategorias); $xml .= '</menu>'; return $xml; } // se genera el nuevo menú en formato XML $menu = creacionXmlMenu(); echo $menu; // se incluye el archivo que cierra la conexión con la base de datos include "includes/db_desconectar.php";
// resuelve el problema de obtención de caracteres erróneos para ciertas letras function caracteresErroneos($cadena) { $correcto = preg_replace('/ú/', 'u', $cadena); $correcto = preg_replace('/ñ/', 'ñ', $cadena); $correcto = preg_replace('/ó/', 'o', $cadena); $correcto = preg_replace('/é/', 'e', $cadena); return $correcto; } function creacionXmlMenu($categoria, $subcategoria) { $consultaCategorias = mysql_query("SELECT * FROM categorias"); $xml = '<?xml version="1.0"?>'; $xml .= '<menu>'; $consultaSubsubcategorias = mysql_query("SELECT * FROM subsubcategorias WHERE categoria='{$categoria}' AND subcategoria='{$subcategoria}'"); while ($filaSubsubcategoria = mysql_fetch_array($consultaSubsubcategorias)) { $nombre = caracteresErroneos($filaSubsubcategoria['nombre']); $xml .= '<subsubcategoria nombre="' . $nombre . '" pos="' . $filaSubsubcategoria['posicion'] . '">'; $xml .= '</subsubcategoria>'; } mysql_free_result($consultaSubsubcategorias); $xml .= '</menu>'; return $xml; } $cat = $_GET['cat']; $subcat = $_GET['subcat']; // se genera el nuevo menú en formato XML $menu = creacionXmlMenu($cat, $subcat); echo $menu; // se incluye el archivo que cierra la conexión con la base de datos include "includes/db_desconectar.php";