php et css

Invité
Invité n'ayant pas de compte PHPfrance

29 mai 2009, 12:01

Bonjour,
J'aimerai attribuer un style particulier aux éléments de mon menu qui ont un rapport avec le contenu. Par exemple attribuer la classe .lien_actif à la catégorie dont le produit dépend (idem pour la marque).
Pour une page catégorie, la catégorie est visible dans l'url et pour la fiche produit elle est visible dans le fil d'Ariane.

Je pensais à quelque chose qui ressemblerait à ça (sans savoir comment traduire l'attribution du style) :
if ( ['nom_categorie'] == $_GET['id'])
{
attribuer style .lien_actif
}
Pourriez-vous m'aider ?

Eléphant du PHP | 94 Messages

29 mai 2009, 12:30

Tu peux faire quelque chose comme ça,
après tout dépend de comment tu génères ton menu.
if ( ['nom_categorie'] == $_GET['id'])
{
    echo '<li class="lien_actif"><a href="index.php" title="Retour à l\'acceuil">Acceuil</a></li>';
}
else
{
    echo '<li><a href="index.php" title="Retour à l\'acceuil">Acceuil</a></li>';
}
Bien sûr, cette méthode est un peu lourde si tu as beaucoup d'éléments de menu.

Invité
Invité n'ayant pas de compte PHPfrance

29 mai 2009, 15:06

Merci pour ta réponse.

J'ai essayé :
 <?php if ($row_categorie['id'] == $_GET['id']) 
{ 	
	  echo '<p class="menugaucheliensactif"><a href="http://www.xxx.com/boutique/categorie.php?id='.echo $row_categorie['id'].'>';
	  echo $row_categorie['nom_categorie']'</a></p>'; 
} 
else 
{ 
    echo '<p class="menugaucheliens"><a href="http://www.xxx.com/boutique/categorie.php?id='.echo $row_categorie['id'].'>';
	echo $row_categorie['nom_categorie']'</a></p>'; 
}
?>
mais j'ai une erreur "Parse error: syntax error, unexpected T_ECHO".

J'ai relu mon code est je n'arrive pas à repérer mon erreur de syntaxe (désolée je suis vraiment débutante ! :? )
HELP

Invité
Invité n'ayant pas de compte PHPfrance

29 mai 2009, 15:09

je viens de rajouter " mais l'erreur perdure
	 <?php if ($row_categorie['id'] == $_GET['id']) 
{ 	
	  echo '<p class="menugaucheliensactif"><a href="http://www.xxx.com/boutique/categorie.php?id='.echo $row_categorie['id'].'">';
	  echo $row_categorie['nom_categorie']'</a></p>'; 
} 
else 
{ 
    echo '<p class="menugaucheliens"><a href="http://www.xxx.com/boutique/categorie.php?id='.echo $row_categorie['id'].'">';
	echo $row_categorie['nom_categorie']'</a></p>'; 
}
?>	

ViPHP
ViPHP | 2291 Messages

29 mai 2009, 15:30

Salut,

Proposition de correction :
if ($row_categorie['id'] == $_GET['id'])
{
      echo '<p class="menugaucheliensactif"><a href="http://www.xxx.com/boutique/categorie.php?id= ' . $row_categorie['id'] . ' ">'.
      $row_categorie['nom_categorie'].'</a></p>';
}
else
{
    echo '<p class="menugaucheliens"><a href="http://www.xxx.com/boutique/categorie.php?id= ' . $row_categorie['id'] . ' ">'.
     $row_categorie['nom_categorie'].'</a></p>';
}
Un echo par ligne suffit :wink:
et tu avais oublier le .
Modifié en dernier par dunbar le 29 mai 2009, 16:07, modifié 1 fois.
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.

Invité
Invité n'ayant pas de compte PHPfrance

29 mai 2009, 15:54

Merci beaucoup. Ca fonctionne. :D