IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Pagination en php


Sujet :

PHP & Base de données

Vue hybride

cladchildren Pagination en php 10/05/2013, 01h02
MaitrePylos Bonjour, Est-tu sur que... 10/05/2013, 09h39
cladchildren re 10/05/2013, 11h46
MaitrePylos ok essaye ceci pour voir ... 10/05/2013, 11h49
cladchildren re 10/05/2013, 12h52
Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 31
    Par défaut Pagination en php
    Bonjour voila mon problème je voudrais faire une pagination sur ma table.
    La requête fonctionne (tester)
    Le problème est que lorsque je mets le code pour la pagination il n'y a que "Page : " qui est afficher sur la page index.php et je ne trouve pas l'erreur


    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
     
    <?php
    include('connexion.inc');
    ?>
    <html>
        <head>
          <title>Info-commune</title>
        </head>
      <body>
     
    <?php
      $messagesParPage=15; 
      $retour_total=pg_query('SELECT COUNT(*) AS total FROM communes'); 
      $donnees_total=pg_fetch_assoc($retour_total); 
      $total=$donnees_total['total']; 
     
     
      $nombreDePages=ceil($total/$messagesParPage);
     
      if(isset($_GET['page'])) 
    {
         $pageActuelle=intval($_GET['page']);
     
      if($pageActuelle>$nombreDePages) 
    {
         $pageActuelle=$nombreDePages;
    }
    }
       else 
    {
        $pageActuelle=1;  
    }
     
      $premiereEntree=($pageActuelle-1)*$messagesParPage; 
     
     
      $req = $connexion->prepare("SELECT * FROM communes Where nom like  '$cherchnom%'or  dept='$cherchdep'  or region = '$cherchreg' LIMIT '.$premiereEntree.', '.$messagesParPage.' ");
      $req->execute();
      $req->setFetchMode(PDO::FETCH_ASSOC);
      $Idd = 1;
        while ($affichage = $req->fetchObject()) {                                     
    ?>
     
    <table>
      <thead>
        <tr>
          <td><font size="2" ><b>N&deg;</b></font></td>
          <td><font size="2" ><b>Nom</b></font></td>
          <td><font size="2" ><b>Population</b></font></td>
          <td><font size="2" ><b>Departement</b></font></td>
          <td><font size="2" ><b>N&deg; commune</b></font></td>
          <td><font size="2" ><b>R&eacute;gion</b></font></td>
         </tr>
        </thead>
          <tr>
    	<td><?php echo $Idd ?></td>
            <td><?php echo '<a href="recherche.php?nom_ascii_maj='.$affichage->nom_ascii_maj.'&region='.$affichage->region.'&population='.$affichage->population.'&departement='.$affichage->dept ?>"><?php echo $affichage->nom_ascii_maj ?></a></td>
            <td><?php echo $affichage->population ?></td>
            <td><?php echo $affichage->dept ?></td>
            <td><?php echo $affichage->comm ?></td>
            <td><?php echo $affichage->region ?></td>
           </tr>
    <?php
      $Idd = $Idd + 1;
    }
    ?>
    </table>
     
    <?php
      echo '<p align="center">Page : '; 
      for($i=1; $i<=$nombreDePages; $i++)
    {
      if($i==$pageActuelle) 
    {
      echo ' [ '.$i.' ] '; 
    }	
      else 
    {
      echo ' <a href="index.php?page='.$i.'">'.$i.'</a> ';
    }
    }
    echo '</p>';
    ?>
     
      </body>
    </html>
    Merci de votre aide !!

  2. #2
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 506
    Par défaut
    Bonjour,

    Est-tu sur que les requêtes sont bonne , car je viens de tester ton code hors requête et il fonctionne parfaitement.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 31
    Par défaut re
    la requête ou je suis sur quelle fonctionne est celle ou je sélectionne les éléments des $_POST mais le reste devrait fonctionner mais je ne vois pas pourquoi ça ne fonctionne pas

    PS: je suis sous postgresql et pas mysql peut etre un lien avec l'erreur

  4. #4
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 506
    Par défaut
    ok essaye ceci pour voir

    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
     
    <?php
    include('connexion.inc');
    ?>
    <html>
    <head>
        <title>Info-commune</title>
    </head>
    <body>
     
    <?php
    $messagesParPage=15;
    $retour_total=pg_query('SELECT COUNT(*) AS total FROM communes');
    $donnees_total=pg_fetch_assoc($retour_total);
    $total=$donnees_total['total'];
     
     
    $nombreDePages=ceil($total/$messagesParPage);
     
    if(isset($_GET['page']))
    {
        $pageActuelle=intval($_GET['page']);
     
        if($pageActuelle>$nombreDePages)
        {
            $pageActuelle=$nombreDePages;
        }
    }
    else
    {
        $pageActuelle=1;
    }
     
    $premiereEntree=($pageActuelle-1)*$messagesParPage;
     
    //
    //$req = $connexion->prepare("SELECT * FROM communes Where nom like  '$cherchnom%'or  dept='$cherchdep'  or region = '$cherchreg' LIMIT '.$premiereEntree.', '.$messagesParPage.' ");
    //$req->execute();
    //$req->setFetchMode(PDO::FETCH_ASSOC);
    //$Idd = 1;
    //while ($affichage = $req->fetchObject()) {
    //?>
    <!---->
    <!--<table>-->
    <!--    <thead>-->
    <!--    <tr>-->
    <!--        <td><font size="2" ><b>N&deg;</b></font></td>-->
    <!--        <td><font size="2" ><b>Nom</b></font></td>-->
    <!--        <td><font size="2" ><b>Population</b></font></td>-->
    <!--        <td><font size="2" ><b>Departement</b></font></td>-->
    <!--        <td><font size="2" ><b>N&deg; commune</b></font></td>-->
    <!--        <td><font size="2" ><b>R&eacute;gion</b></font></td>-->
    <!--    </tr>-->
    <!--    </thead>-->
    <!--    <tr>-->
    <!--        <td>--><?php //echo $Idd ?><!--</td>-->
            <td><?php echo '<a href="recherche.php?nom_ascii_maj='.$affichage->nom_ascii_maj.'&region='.$affichage->region.'&population='.$affichage->population.'&departement='.$affichage->dept ?>"><?php echo $affichage->nom_ascii_maj ?></a></td>
            <td><?php echo $affichage->population ?></td>
            <td><?php echo $affichage->dept ?></td>
            <td><?php echo $affichage->comm ?></td>
            <td><?php echo $affichage->region ?></td>
    <!--    </tr>-->
    <!--    --><?php
    //    $Idd = $Idd + 1;
    //    }
    //    ?>
    <!--</table>-->
     
    <?php
    echo '<p align="center">Page : ';
    for($i=1; $i<=$nombreDePages; $i++)
    {
        if($i==$pageActuelle)
        {
            echo ' [ '.$i.' ] ';
        }
        else
        {
            echo ' <a href="index.php?page='.$i.'">'.$i.'</a> ';
        }
    }
    echo '</p>';
    ?>
     
    </body>
    </html>

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 31
    Par défaut re
    j'ai toujours le meme problème y page blanche s'affiche avec 'Page : ' en haut au centre de la page

    et je viens de tester :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    $messagesParPage=15;
    $retour_total= pg_query("SELECT COUNT(*) AS total FROM communes");
    $donnees_total=pg_fetch_assoc($retour_total);
    $total=$donnees_total['total'];
     echo $messagesParPage;
     echo $retour_total;
     echo $donnees_total;
     echo $total;
    ?>
    juste ça mais rien ne s'affiche sauf 15 soit le nombre par page ...

  6. #6
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 506
    Par défaut
    Donc ta requête ne retourne rien,

    Essaye en PDO

    juste pour tester

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    $dbh = new PDO("pgsql:dbname=$dbname;host=$host", $username, $password ); 
     
    $sql = 'SELECT COUNT(*) AS total FROM communes'
    $stmt = $dbh->prepare($sql);
    $stmt->execute();
    $result = $stmt->fetch(PDO::FETCH_ASSOC)
     
    $total=$result['total'];
    echo $messagesParPage;
    echo $retour_total;
    echo $donnees_total;
    echo $total;

Discussions similaires

  1. pagination en php
    Par rochdi123 dans le forum Langage
    Réponses: 1
    Dernier message: 24/08/2009, 10h07
  2. pagination en php
    Par hadjiphp dans le forum Langage
    Réponses: 9
    Dernier message: 12/06/2009, 10h25
  3. pagination en php
    Par biloute73 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 23/03/2009, 13h41
  4. Recherche en pagination en PHP
    Par ismonetooo dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 10/10/2008, 16h04
  5. Pagination avec PHP et Mysql
    Par __fabrice dans le forum Flash
    Réponses: 2
    Dernier message: 27/09/2006, 14h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo