[RESOLU] Petit problème pour lien actif php

Eléphant du PHP | 283 Messages

27 déc. 2014, 19:51

Bonjour à tous,

Je suis entrain de mettre en place un style spécifique une fois qu'un lien est cliqué sur mon menu.
Jusque là ça marchait bien mais je bloque sur ma condition quand il s'agit de la mettre au sein d'un echo.

Voici mon code :
                    <ul class="menu">
                        <li><a href="?mod=accueil" <?php if($title == 'Accueil'){ echo 'class="active"'; } ?>>Accueil</a></li>   
 <?php if(isset($_SESSION['id'])) { 
		         echo '<li><a href="contact.php">Contact</a></li>';} ?>  
                    </ul>
Donc en gros je ne sais pas comment préciser ma condition
<?php if($title == 'Accueil'){ echo 'class="active"'; } ?>
au sein de l'echo.

Merci d'avance à ceux qui pourront m'aider à résoudre mon petit problème. ;)

Mammouth du PHP | 1339 Messages

28 déc. 2014, 02:01

Allons-y étape par étape.

Déjà, tu vois que tu recupère une variable $_GET['mod'];
Donc le plus simple est de faire :
<ul class="menu">
<li><a href="?mod=accueil"<?php echo !empty($_GET['mod']) && ($_GET['mod'] == 'accueil') ? ' class="active"' : NULL; ?>>Accueil</a></li>   
<?php echo !empty($_SESSION['id']) ? '<li><a href="contact.php">Contact</a></li>' : NULL; ?>
</ul>
Après là tu n'as qu'un seul lien mais le plus simple serait de faire une boucle de tout les noms de ton menu et de vérifier si le 'mod' = le nom du menu affiché.

Est-ce que ca déjà ca t'avance ?
Bon sinon tu me fais un message privé et on se fait un TeamViewer

Eléphant du PHP | 283 Messages

28 déc. 2014, 13:52

C'est bon merci de ton aide Eli. ;)