Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/07/2010, 00:57
livam84
 
Fecha de Ingreso: julio-2010
Mensajes: 2
Antigüedad: 13 años, 9 meses
Puntos: 0
Pregunta AYUDA!!! Mostrar los resultados en un menu tipo treeview

Hola como están, bueno mi duda es acerca de php, mysql y js.


Tengo un archivo php que me muestra las ubicaciones (paises, estados, municipios, ciudades, etc) de acuerdo a los registros de éstos en la bd MySQL, es decir, si yo agrego un nuevo pais, éste archivo lo muestra automaticamente, sin tocar nada del codigo. El problema es que me muestra los resultados en una lista. Ahora bien imaginense tener un solo pais, pero este pais tiene x estados, cada estado tiene 50 municipios, y asi se va. Imaginen el largo de la lista. Lo que quiero es que se muestre en un estilo Treeview. Es decir que al entrar a la pagina me muestre al principio solo los paises, si yo le doy click a un pais, que solo me muestre los estados de éste; al darle click a un estado que me muestre solo los municipios de éste, etc.

Esta de más decir que los resultados (paises, estados, etc.) están relacionados entre sí.

Bueno les dejo el código a ver si alguien le encuentra como, porque yo me he cansado de buscarle

<?
$countryObj = new LocationCountry();
$countries = $countryObj->retrieveAllCountries();
if ($countries) {
foreach ($countries as $each_country) {
if (MODREWRITE_FEATURE != "on") {
echo "<h2 class=\"standardSubTitle\"><a href=\"".LISTING_DEFAULT_URL."/results.php?country_id=".$each_country["id"]."\">".$each_country["name"]."</a></h2>";
} else {
echo "<h2 class=\"standardSubTitle\"><a href=\"".LISTING_DEFAULT_URL."/location/".$each_country["friendly_url"]."\">".$each_country["name"]."</a></h2>";
}
$stateObj = new LocationState();
$stateObj->setNumber("country_id", $each_country["id"]);
$states = $stateObj->retrieveStatesByCountry();
if ($states) {
foreach ($states as $each_state) {
echo "<div class=\"allLocations\">";
if (MODREWRITE_FEATURE != "on") {
echo "<h3><a href=\"".LISTING_DEFAULT_URL."/results.php?country_id=".$each_country["id"]."&amp;state_id=".$each_state["id"]."\">".$each_state["name"]."</a></h3>";
} else {
echo "<h3><a href=\"".LISTING_DEFAULT_URL."/location/".$each_country["friendly_url"]."/".$each_state["friendly_url"]."\">".$each_state["name"]."</a></h3>";
}
$regionObj = new LocationRegion();
$regionObj->setNumber("state_id", $each_state["id"]);
$regions = $regionObj->retrieveRegionsByState();
if ($regions) {
unset($regionsString);
foreach ($regions as $each_region) {
if (MODREWRITE_FEATURE != "on") {
$regionsString[] = "<a href=\"".LISTING_DEFAULT_URL."/results.php?country_id=".$each_country["id"]."&amp;state_id=".$each_state["id"]."&amp;region_id=".$each_region["id"]."\">".$each_region["name"]."</a>";
} else {
$regionsString[] = "<a href=\"".LISTING_DEFAULT_URL."/location/".$each_country["friendly_url"]."/".$each_state["friendly_url"]."/".$each_region["friendly_url"]."\">".$each_region["name"]."</a>";
}
}
if ($regionsString) echo "<p class=\"complementaryInfo\">".(implode(", ", $regionsString))."</p>";
}
echo "</div>";
}
}
}
}
?>


SALUDOS!!

Última edición por livam84; 30/07/2010 a las 15:38 Razón: añadir saludos