Bonjour,
Mon livre d'or marche nickel et son look est presque superbe car j'ai un problème sur le css de la pagination. Je n'arrive pas a changer la couleur des liens qui ne sont pas (page courante). Faut-il mettre une balise class ou id dans ce code ou obligatoirement retoucher le code php avec exemple un autre echo:

<?php
for($i=1;$i<=$nbPage;$i++){ // Pagination
if($i==$cPage)
{
echo " $i /";// Enleve le lien de la cPage
}
else
{
echo " <a href=\"livre_d_or.php?p=$i\">$i</a> /"; // affiche les liens nbPage
}
}
mysql_close();
?>

J'ai essayer plein de chose mais sans succès :( si quelqu'un peu m'orienter sur la marche a suivre. Si je dois toucher a mon code php en premier, pour après mettre du css ou c'est faisable en css comme ça? .
Merci pour vos réponses et un grand MERCI pour ce tuto!!!

8 réponses


Tortue33
Auteur
Réponse acceptée

Bonjour,
J'avais déjà testé quelque chose comme ça, et ça ne marché pas. La ça ne fonctionne pas non plus mais j'ai compris pourquoi.Il manque des antislashs avant les guillemets de courant:

echo " <a href=\"livre_d_or.php?p=$i\"><span class=\"courant\" >$i</span></a> /"; // affiche les liens nbPage

Sa marche un peu car les autres sont aussi vert maintenant, mais toujour rouge apres le survol de la souris :( pourtant mon code css est:

.courant{  
    color : green
      }  
        .courant:hover{  
     color :blue
      }

En tout cas merci WinuX de m'avoir aidé car j'ai pu avancer, si vous avez des autres conseils pour faire un truc un peu plus joli car on ne voit meme pas la page active.

Je ne vois pas trop le souci tu stylise les liens a{color:....} et c'est bon non ?

Tortue33
Auteur

merci pour ta reponse
Si je fais a{color:....} sa me change la couleur de la page 1 (page actuelle),puis si je mets a:hover{color:blue;} sa marche pas le lien est rouge avec ma souris dessus. Les autres pages ne changent pas de couleur, quand je suis sur la page 1 les pages 2,3,4,5 sont grises donc je vois très peu leurs numéros.

Possible d'avoir un petit exemple en ligne parceque ce n'est pas clair :D

Tortue33
Auteur

oui je sais, je n'arrive pas bien a l'expliquer, j'ai honte de mon code car c'est de la bricole j'ai commencé avec kompozer malheureusement. dsl je sais pas bon, c'est mon premier site:
http://irontendance.free.fr/livre\_d\_or.php

Je vois pas de pagination, et s'il y en a une seulement sur la page livre d'or alors elle y sera affichée.

Si tu parles du menu, que tu veux faire une class active en quelque sorte (dire que tous les autres sont inactive, c'est dire que celle courant est active), alors faut passer par du php.

Tu déclares une variable bison tel que :

$livre_d_or = 1;
include('menu.php');

Et dans ton menu, tu peux faire un truc du genre :

if(isset($livre_d_or)){
    // Ton menu avec la class active
}

Pis le reste se joue en css.

Si c'est autre chose, soit plus explicite, fait nous 50 ligne s'il le faut, mais c'est pas très compréhensible :/

J'espère que ca pourra t'aider ;)

Tortue33
Auteur

Merci Winux pour ta réponse, oui sur le code source de la page on ne voit pas la pagination du livre d'or mais elle y est:
C'est celle-ci:

<?php
for($i=1;$i<=$nbPage;$i++){ // Pagination
if($i==$cPage)
{
echo " $i /";// Enleve le lien de la cPage
}
else
{
echo " <a href=\"livre_d_or.php?p=$i\">$i</a> /"; // affiche les liens nbPage
}
}
mysql_close();
?>

la pagination du livre d'or donne ça:

sur l'image, le 1 est en vert mais le 2,3,4,5 sont en gris tres foncé et en rouge lors du survol de la souris.
J'aimerai changer la couleur grise des numéros 2,3,4,5 et la couleur rouge des liens 2,3,4,5 lors du survol de la souris.
encore merci pour votre aide :)

Ahhh oki

C'est plus simple alors.
En php :

<?php
for($i=1;$i<=$nbPage;$i++){ // Pagination
if($i==$cPage)
{
echo " $i /";// Enleve le lien de la cPage
}
else
{
echo " <a href=\"livre_d_or.php?p=$i\"><span class="courant" >$i</span></a> /"; // affiche les liens nbPage
}
}
mysql_close();
?>

En css :

.courant{
    color : /* Ta couleur */
}
.courant:hover{
    color : /* Ta couleur au survol */
}

Vouala vouala, ca devrait aller mieux ainsi ;)