Bonjour a tous,

je débute doucement dans le php et j'ai un soucis pour lister les pays que j'ai mis dans ma base mysql. j'ai créer deux fichier un pour la function et l'autre pour lire la table. Mais malheureusement j'ai une erreur que je ne trouve pas.

fonctions.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?php
function displayNextPreviousButtons($limite,$total,$nb,$page) {
$limiteSuivante = $limite + $nb;
$limitePrecedente = $limite - $nb;
echo  '<table><tr>'."\n";
if($limite != 0) {
        echo  '<td valign="top">'."\n";
        echo  '<form action="'.$page.'" method="post">'."\n";
        echo  '<input type="submit" value="précédents">'."\n";
        echo  '<input type="hidden" value="'.$limitePrecedente.'" name="limite">'."\n";
        echo  '</form>'."\n";
        echo  '</td>'."\n";
}
if($limiteSuivante < $total) {
        echo  '<td valign="top">'."\n";
        echo  '<form action="'.$page.'" method="post">'."\n";
        echo  '<input type="submit" value="suivants">'."\n";
        echo  '<input type="hidden" value="'.$limiteSuivante.'" name="limite">'."\n";
        echo  '</form>'."\n";
        echo  '</td>'."\n";
 
}
echo  '</tr></table>'."\n";
}
 
function affichePages($nb,$page,$total) {
        $nbpages=ceil($total/$nb);
        $numeroPages = 1;
        $compteurPages = 1;
        $limite  = 0;
        echo '<table border = "0" ><tr>'."\n";
        while($numeroPages <= $nbpages) {
        echo '<td ><a href = "'.$page.'?limite='.$limite.'">'.$numeroPages.'</a></td>'."\n";
        $limite = $limite + $nb;
        $numeroPages = $numeroPages + 1;
        $compteurPages = $compteurPages + 1;
            if($compteurPages == 10) {
            $compteurPages = 1;
            echo '<br>'."\n";
            }
        }
        echo '</tr></table>'."\n";
}
?>
Liste_Pays.php

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans titre</title>
</head>
 
<body>
 
<?php
//=========================================
// includes du fichier fonctions
//=========================================
require 'functions/fonctions.php';
//=========================================
// information pour la connection à le DB
//=========================================
$host = 'localhost';
$user = 'USER';
$pass = 'PASSWORD';
$db = 'BASE';
 
//=========================================
// 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(id) FROM Pays';
$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 Code,Nom,URL_Drapeau FROM Pays ORDER BY Code ASC 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>Code</u></b></td>';
        echo '<td bgcolor="#669999"><b><u>Nom</u></b></td>';
        echo '<td bgcolor="#669999"><b><u>URL_Drapeau</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['Code'].'</td>';
        echo '<td bgcolor="#CCCCCC">'.$row['Nom'].'</td>';
        echo '<td bgcolor="#CCCCCC">'.$row['URL_Drapeau'].'</td>';		
        echo '</tr>'."\n";
    }
    echo '</table>'."\n";
}
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>

Merci de votre aide précieuse