Foros del Web » Programación para mayores de 30 ;) » Java »

Menu con JS + PHP + MYSQL mantener desplegada la última categoria selecciona

Estas en el tema de Menu con JS + PHP + MYSQL mantener desplegada la última categoria selecciona en el foro de Java en Foros del Web. Muy buenas a todos, estoy con una gran duda la cual no he podido encontrarle la solución, pese a largas horas de búsqueda en Google ...
  #1 (permalink)  
Antiguo 19/03/2013, 17:06
 
Fecha de Ingreso: noviembre-2009
Mensajes: 8
Antigüedad: 14 años, 5 meses
Puntos: 0
Menu con JS + PHP + MYSQL mantener desplegada la última categoria selecciona

Muy buenas a todos, estoy con una gran duda la cual no he podido encontrarle la solución, pese a largas horas de búsqueda en Google y en documentación.

Espero me puedan orientar o dar una ayuda.

Tengo este menu (que adjunto debajo) el cual luego que el usuario selecciona una categoria se despliega y muestra las diferentes subcategorias asociadas a esa.

Categoria A
Subcategoria 1
Subcategoria 2
Subcategoria 3

Categoria B

Categoria C


Lo que quiero hacer es que al hacer un click sobre alguna de esas subcategorias, la categoria que contiene a esa subcategoria anteriormente seleccionada, quede desplegada luego de haberse actualizado la página

Categoria A
Subcategoria 1
Subcategoria 2
Subcategoria 3

Categoria B

Categoria C

Aclaración: A traves de la URL puedo saber que Subcategoria el usuario seleccionó.


Aca va el menú

<style type="text/css">
#menu { text-align: left;
font-size: 11px;
font-family: tahoma;
font-weight: bold;
}
#menu #cat { padding: 2px 0px 5px 5px; margin: 0px; }
#menu #cat a { color: #1C4176; }
#menu #cat li { display: none; }
#menu #cat li a { text-decoration: none; color: #F08712; }
</style>

<script type="text/javascript">
function desplegar( catNode )
{
var menu = document.getElementById( 'menu' );
var cats = menu.getElementsByTagName( 'UL' );
for( i=0; i<cats.length; i++ ) {
var items = cats[i].getElementsByTagName( 'LI' );
for( u=0; u<items.length; u++ ) {
if( cats[i] != catNode ) {
items[u].style.display = 'none';
} else {
items[u].style.display = 'block';
}
}
}
}
</script>

<!-- MENU DESPLEGABLE -->

<div id="menu">
<?php
require_once('Connections/cn.php');
mysql_select_db($database_cn, $cn);
//echo mysql_errno($cn) . ": " . mysql_error($cn). "\n";


$categorias = mysql_query( "SELECT * FROM categorias ORDER BY NombreCategoria ASC", $cn );

while ( $datos_categoria = mysql_fetch_array( $categorias ) ) {

$direccion=$datos_categoria['IdCategoria'];

$subcategorias = mysql_query( "SELECT * FROM subcategorias WHERE IdCategoria ='$direccion' ORDER BY NombreSubcategoria ASC", $cn );

echo '<ul id="cat"><strong>•&nbsp;&nbsp;</strong><a href="javascript:void(0);" onclick="desplegar( this.parentNode );">'.$datos_categoria['NombreCategoria'].'</a>'."\n";

while ( $datos_subcategoria = mysql_fetch_array( $subcategorias ) ) {
echo "\t".'<li style="padding: 1px 0px 5px 5px; margin: 2px;">&raquo;&nbsp;<a href="'."notadepedido.php".'?codigocategoria='.$da tos_subcategoria['IdSubcategoria'].'" TARGET="_self">'.$datos_subcategoria['NombreSubcategoria'].'</a></li>'."\n";
}

echo '</ul>'."\n";
}
?>
</div>


Gracias !!!

Etiquetas: js, mysql, php
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:27.