PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 Forum Général PHP » tableau et pagination » 29-07-2009 19:29:12

groskanel
Réponses : 1

bonjour

J'ai trouvé sur ce site une fonction pour paginer un tableau, qui fonctionne tres bien

<html>

<body>

<?php

//=========================================

// includes du fichier fonctions

//=========================================

require 'fonctions.php';

//=========================================

// information pour la connection à le DB

//=========================================

$host = 'localhost';

$user = 'bl';

$pass = '';

$db = '';

//=========================================

// initialisation des variables

//=========================================

// on va afficher 5 résultats par page.

$nombre = 5;  

// si limite n'existe pas on l'initialise à zéro

if (!$limite) $limite = 0;

// on cherche le nom de la page.    

$path_parts = pathinfo($_SERVER['PHP_SELF']);

$page = $path_parts["basename"];

//=========================================    

// connection à la DB

//=========================================

$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );

mysql_select_db($db) or die ('Erreur :'.mysql_error());

//=========================================    

// requête SQL qui compte le nombre total

// d'enregistrements dans la table.

//=========================================

$select = 'SELECT count(promo=1) FROM catalogue';

$result = mysql_query($select,$link)  or die ('Erreur : '.mysql_error() );

$row = mysql_fetch_row($result);

$total = $row[0];

   

//=========================================

// vérifier la validité de notre variable

// $limite;

//=========================================

$verifLimite= verifLimite($limite,$total,$nombre);

// si la limite passée n'est pas valide on la remet à zéro

if(!$verifLimite)  {

    $limite = 0;

}

//=========================================

// requête SQL qui ne prend que le nombre

// d'enregistrement necessaire à l'affichage.

//=========================================

$select = 'select nommarchand,prix FROM catalogue WHERE promo  limit '.$limite.','.$nombre;

$result = mysql_query($select,$link)  or die ('Erreur : '.mysql_error() );

   

//=========================================    

// si on a récupéré un resultat on l'affiche.

//=========================================
if($total) {

    // début du tableau

    echo '<table bgcolor="#FFFFFF">'."\n";

        // première ligne on affiche les titres prénom et surnom dans 2 colonnes

        echo '<tr>';

        echo '<td bgcolor="#669999"><b><u>Prénom</u></b></td>';

        echo '<td bgcolor="#669999"><b><u>Surnom</u></b></td>';

        echo '</tr>'."\n";

    // lecture et affichage des résultats sur 2 colonnes    

    while($row = mysql_fetch_array($result)) {

        echo '<tr>';

        echo '<td bgcolor="#CCCCCC">'.$row['nommarchand'].'</td>';

        echo '<td bgcolor="#CCCCCC">'.$row['prix'].'</td>';

        echo '</tr>'."\n";

    }

    echo '</table>';

}

else echo 'Pas d\'enregistrements dans cette table...';

mysql_free_result($result);

//=========================================    

// si le nombre d'enregistrement à afficher

// est plus grand que $nombre

//=========================================

if($total > $nombre) {

    // affichage des liens vers les pages

    affichePages($nombre,$page,$total);

    // affichage des boutons

    displayNextPreviousButtons($limite,$total,$nombre,$page);

}

?>

</body>

</html>

qui fonctionne bien, seulement dans ma base j'ai un champs promo qui affiche 1 ou 0 et j'aimerais que ce tableau et donc la pagination ne renvoi que le champs 1

Est-ce que quelqu'un pourrait me dire comment faire ?

Merci d'avance.

Pied de page des forums

Propulsé par FluxBB