Aspect bouton menu page en visite

Résolu
t671 Messages postés 1482 Date d'inscription   Statut Membre Dernière intervention   -  
t671 Messages postés 1482 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai un site qui affiche un menu issu d'une bd, et affiche le lien correspondant au bouton du menu dans une div (frame).

$select = 'SELECT * FROM menu ORDER BY id ASC';  
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );       
 
echo '<div class="menu">'; 
  while($row = mysql_fetch_array($result))
{ 
echo '<a class="bouton" href="menu.php?lien='.$row['lien'].'">'.$row['nom'].'</a><p>'; 
} 
echo '</div>';
echo '<div class="frame">'; 

if(isset($_GET['lien']))
$inc = $_GET['lien'];
include($inc);

echo '</div>'; 


Je voudrais qu'à la visite d'un lien du menu, le bouton reste d'une couleur différente des autres (ce qui permettrait de repérer vite fait le bouton de la page visitée).

Merci

2 réponses

  1. t671 Messages postés 1482 Date d'inscription   Statut Membre Dernière intervention   11
     
    Si je mets .bouton:visited , les boutons restent dans le format .bouton:visited, et ce n'est pas ce que je recherche.
    Si je mets .bouton:active, ça ne fonctionne pas !

    Dans un script précédent où je définissais le menu dans le script, ça fonctionnait ainsi :

    $pages = array(
       'accueil'=>'accueil.htm',
       'humanitaire'=>'humanitaire.htm',
       ...................... );
    
    if(isset($_GET['page']) && array_key_exists($_GET['page'],$pages)){
     $inc = $pages[$_GET['page']];
     $active = $_GET['page'];
    }
    else{
     $inc = 'accueil.htm';
     $active = 'accueil';
    }
    
    echo '<div class="menu"><ul>
    		  <a class="bouton'.($active == 'accueil' ? 'active' : '').'" href="index.php?page=accueil.htm">Accueil</a><p>
    		  <a class="bouton'.($active == 'humanitaire' ? 'active' : '').'" href="index.php?page=humanitaire">L\'action humanitaire</a><p>
    		  ...........................
            </ul></div>';
    echo '<div class="frame">'; 
    include($inc);
    .......................................


    Donc, avec la formule : <a class="bouton'.($active == 'accueil' ? 'active' : '').'" href="index.php?page=accueil.htm">Accueil</a><p> ça fonctionnait !!!!

    J'ai essayé de refaire pareil en utilisant un menu dans une base, mais ça fonctionne pô :

    $select = 'SELECT * FROM menu ORDER BY id ASC';  
    $result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );       
    
    echo '<div class="menu">'; 
    
      while($row = mysql_fetch_array($result)) 
    { 
    echo '<a class="bouton'.($active == '.$row[\'nom\'].' ? 'active' : '').'"  href="menu.php?lien='.$row['lien'].'">'.$row['nom'].'</a><p>'; 
    } 
    echo '</div>';
    if(isset($_GET['lien']))
    {
     $inc = $_GET['lien'];
     $active = $_GET['nom'];
    }
    


    Le bouton ne prend pas la forme active ...... :(
    0
  2. jerems
     
    Bonjour,

    Il faudrait surement ajouter dans ton fichier css un .bouton:visited avec les propriétés que tu veut..
    -1