Page 1 sur 1

Afficher page active dans le menu

Posté : 24 déc. 2009, 10:31
par fabrice88250
bonjour,
je viens vers vous pour avoir votre avis sur mon menu. Afin d'appliquer un style diffèrent sur le lien de la page active je fait un test sur la page qui est ouvert et si elle est égale au lien que je lui donne alors j'affiche ce style (fond de couleur différent). Sa permet a l'internaute de savoir dans quelle page il se trouve et au niveau visuelle c'est plus sympa.

Mon menu fonctionne très bien mais je voudrais savoir si on peut simplifier ?
<ul id='menu'>
    <?php 
    if ($_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] == 'mondomaine.fr/index.php')
    	{ 
    	?>
        <li class="active"><a href='../index.php' title="Accueil" >Accueil</a></li>
        <?php
    	}
    else { 
    	?>
		<li><a href='../index.php' title="Accueil" >Accueil</a></li>
		<?php
		}
		?>
        
    	<li><img src="../images/structure/etoile.png" alt="etoile" /></li>
        
        <?php 
    if ($_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] == 'mondomaine.fr/pages/chambres.php')
    	{ 
    	?>
        <li class="active"><a href='../pages/chambres.php' title="Les chambres" >Les chambres</a></li>
        <?php
    	}
    else { 
    	?>
		<li><a href='../pages/chambres.php' title="Les chambres" >Les chambres</a></li>
		<?php
		}
		?>
....
...
...



Re: Afficher page active dans le menu

Posté : 24 déc. 2009, 11:27
par Aureusms
Assez simplement :
<ul id='menu'>
<?php
$class_active = ($_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] == 'mondomaine.fr/index.php') ? 'class="active"' : '';
?>
<li <?php echo $class_active; ?> ><a href='../index.php' title="Accueil" >Accueil</a></li>
<li><img src="../images/structure/etoile.png" alt="etoile" /></li>
<?php
$class_active = ($_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] == 'mondomaine.fr/pages/chambres.php') ?  'class="active"' : '';
?>
<li <?php echo $class_active; ?>><a href='../pages/chambres.php' title="Les chambres" >Les chambres</a></li>