Foros del Web » Programando para Internet » PHP »

php y css, en un menu para seleccionar una seccion ....

Estas en el tema de php y css, en un menu para seleccionar una seccion .... en el foro de PHP en Foros del Web. Os comento: tengo un menu con los siguientes items: portada, politica, ciudad, sociedad, deportes, opinion, sucesos, fiestas. quiero que se marque cada item cuando se ...
  #1 (permalink)  
Antiguo 10/07/2007, 03:41
 
Fecha de Ingreso: mayo-2007
Mensajes: 101
Antigüedad: 16 años, 10 meses
Puntos: 0
php y css, en un menu para seleccionar una seccion ....

Os comento:
tengo un menu con los siguientes items:
portada, politica, ciudad, sociedad, deportes, opinion, sucesos, fiestas.
quiero que se marque cada item cuando se este en la pagina correspondiente.
Hasta aqui todo estupendo, cuando esta en la portada yo le digo que se marque portada con un id=active.

<ul id="navlist">
<li id="active"><a href="../">Portada</a></li>
<li><a href="/noticias/tema.php?tema=Politica">Pol&iacute;tica</a></li>
<li><a href="/noticias/tema.php?tema=Ciudad">Ciudad</a></li>
<li><a href="/noticias/tema.php?tema=Sociedad">Sociedad</a></li>
<li><a href="/noticias/tema.php?tema=Deportes">Deportes</a></li>
<li><a href="/noticias/tema.php?tema=Opinion">Opini&oacute;n</a></li>
<li><a href="/noticias/tema.php?tema=Sucesos">Sucesos</a></li>
<li><a href="/noticias/tema.php?tema=Fiestas">Fiestas</a></li>
</ul>

pero como le digo yo a "active" en que pagina está? si es php. Haber si me explico, para yo llamar a un tema tengo esta ruta:

http://www.vinaloporural.com/noticias/tema.php?tema=Politica
igual que pone politica, puede poner otro tema de los que hay, claro si en la lista estan todos los temas, ¿como le digo yo cual está activado en ese momento?
La verdad que no se si me he explicado correctamente, pero el tema me lleva de cabeza.

Todo esto lo escribí en el foro de css y "Bonez" me respondió esto:

Puedes crear una función, y pasarla por cada item de la lista, comprobando el item de la lista y la sección en la que se está con $_GET['tema'].

Algo así:
Código PHP:
<?php

function activo($tema,$item) {
if($tema==$item) echo 'id="active"';
}

?>

<li><a href="/noticias/tema.php?tema=Politica" <?activo($_GET['tema'],"Politica")?>>Pol&iacute;tica</a></li>
<li><a href="/noticias/tema.php?tema=Ciudad" <?activo($_GET['tema'],"Ciudad")?>>Ciudad</a></li>
Mas o menos sería eso.

pero espero que me podais aclarar un poco esto, gracias.
Necesito sugerencias.
  #2 (permalink)  
Antiguo 10/07/2007, 05:12
Avatar de Azrael666  
Fecha de Ingreso: noviembre-2004
Mensajes: 652
Antigüedad: 19 años, 5 meses
Puntos: 1
Re: php y css, en un menu para seleccionar una seccion ....

yo haría una pagina diferente para cada apartado y meteria esto (vamos, es como lo suelo hacer normalmente):
Código PHP:
$menu"<li ";
if (
strpos($_SERVER['PHP_SELF'],"pagina.php")!==false$menu.=" id='active' ";
$menu.="><a href='pagina.php'>pagina 01</a></li>";
echo 
$menu
ese if comprueba que la pagina actual es igual a la que le pasas, y si lo es mete el id='active', sino lo deja como está.

pero con todas las secciones en la misma pagina no se si funcionaria con tema.php?tema=Politica, puedes probar...
__________________
ALOZORRO v5.0 (ahora en .es)
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 17:21.