Page 1 sur 1

Mettre en évidence la page en cours

MessagePosté: Lun Déc 10, 2007 7:15 pm
par ColdFusion
c'est mon script de pagination:

Code: Tout sélectionner

<?php
$dbhost 
'imysql04';
$dblogin 'i5075984';
$dbpassword '             ' ;
$dbname 'i5075984' ;

   
mysql_connect($dbhost,$dblogin,$dbpassword);
   
mysql_select_db($dbname);

      
$nombreDeMessagesParPage 10;
      
$retour mysql_query('SELECT COUNT(*) AS nb_messages FROM news WHERE categorie="general"');
      
$donnees mysql_fetch_array($retour);
      
$totalDesMessages $donnees['nb_messages'];
      
$nombreDePages  ceil($totalDesMessages $nombreDeMessagesParPage);
      echo 
'Page : ';
      for (
$i $i <= $nombreDePages $i++)
      {
          echo 
'<a href="index.php?page=' $i '">' $i '</a>';
      }
      
?>
    </p>
      <?php
      
if (isset($_GET['page']))
      {
              
$page intval($_GET['page']);
      }
      else
      {
              
$page 1;
      }
?>


Je voudrai que si on est à la page 1, le 1 appraissent en gras bleu et que si on est à la page 2 le 1 redevienne normal et que le 2 devienne bleu ( pour montrer plus facilement où l'on est ) donc voilà, j'y ai déjà réfléchit et je n'ai trouver aucune solution... merci d'avance pour votre aide

MessagePosté: Lun Déc 10, 2007 10:22 pm
par Yoyo
Alors, c'est super simple tu vas voir :)

Alors, déjà, il faut trouver ce qui te permet de savoir sur quelle page tu te trouves actuellement ! Pour cela, il y a le paramètre dans l'url ! On la récupère comment ? par le $_GET['page']

Alors, c'est simple, il suffit de faire le $_GET['page'] juste avant la boucle for.

Ensuite, on utilisera la page en cours dans la boucle for en faisant une petite alternative afin de mettre en évidence la page en cours !

Ce qui donne:

Code: Tout sélectionner

      <?php
// On récupère le numéro de page sur laquelle on se trouve
      
if (isset($_GET['page']))
      {
              
$page intval($_GET['page']);
      }
      else
      {
              
$page 1;
      } 
// On ajoute une condition et on compare les pages avec la page en cours pour changer la présentation !
      
for ($i $i <= $nombreDePages $i++)
      {
        if ( 
$i == $page )
          echo 
'<a style="font-weight:bold; color:blue;" href="index.php?page=' $i '">' $i '</a>';
        else
          echo 
'<a href="index.php?page=' $i '">' $i '</a>';
      }
     
?>


Voila, je te laisse réintégrer ton code. Tu devrais y arriver maintenant :)

MessagePosté: Lun Déc 10, 2007 10:23 pm
par ColdFusion
Ptin j'ai fais la même chose ce matin sauf pour le if où au lieu de mettre == $page j'avais fait autre chose que $page ba merci en tous cas

MessagePosté: Lun Déc 10, 2007 10:32 pm
par Yoyo
2 rien, ravi de t'aider :) Ptet que d'autre se lancerons aussi à poser leurs questions , puis que d'autres aiderons aussi :)