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

Langage PHP Discussion :

Creer une pagination


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    386
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 386
    Par défaut Creer une pagination
    Bonjour le forum,
    Je cherche depuis ce script fonctionnant très bien, a créer une pagination :
    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
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="cs" lang="cs">
    <head>
    <?php
    include('connexion.php')
    ?>
    <title></title>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <link rel="stylesheet" type="text/css" href="css/default.css" media="screen" />
    </head>
    <body>
    <?php
    while($donnees = mysqli_fetch_assoc($req))
    {
    ?>
            <h3><?php echo $donnees['ID']; ?></h3>
     
    <?php
    }
    ?>
     
    </body>
    </html>
    Imaginons que je souhaite paginer ma page tous les 50 ID, j'aurais les 50 premiers sur cette page, les 50 suivants sur mapage.php?id=2 etc.
    Existe t"il une fonction pour réaliser ceci ?
    Je vous remercie par avance.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    386
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 386
    Par défaut
    Je vous remercie je vais potasser !

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    386
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 386
    Par défaut
    Voila j'ai potasser le script et j'arrive à le faire fonctionner.
    J'ai donc essayé de l'intégrer à mon script initial que voici :
    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
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="cs" lang="cs">
    <head>
    <?php
    include('connexion.php')
    ?>
    <title></title>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <link rel="stylesheet" type="text/css" href="css/default.css" media="screen" />
    </head>
    <body>
    <?php
    while($donnees = mysqli_fetch_assoc($req))
    {
    ?>
     
     
       <div class="item first">
            <h3 class="subheader"><a href="<?php echo "$jeux-$titre";?>-<?php echo $donnees['ID']; ?>.php"><?php echo $donnees['date']; ?></a></h3>
            <span class="date"><a href="<?php echo "$jeux-$titre";?>-<?php echo $donnees['ID']; ?>.php">Plus de détails</a></span>
            </div>
    <?php
    }
    ?>
     
    </body>
    </html>
    J'ai bien compris qu'il fallait que je virer les "<?php echo $donnees['ID'];?> par '.stripslashes($donnees_messages["ID"]).'

    Mais sa ne fonctionne pas et mon script et celui ci :
    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
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="cs" lang="cs">
    <head>
    <?php
    include('connexion')
    ?>
    <title> </title>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <link rel="stylesheet" type="text/css" href="css/default.css" media="screen" />
    </head>
    <body>
     
    <div class="item first">
    <?php
    //Connexion à la base de données
    mysql_connect('localhost', 'root', '');
    mysql_select_db('test1');
     
    $messagesParPage=2; //Nous allons afficher 2 messages par page.
     
    //Une connexion SQL doit être ouverte avant cette ligne...
    $retour_total=mysql_query('SELECT COUNT(*) AS total FROM jeux_video'); //Nous récupérons le contenu de la requête dans $retour_total
    $donnees_total=mysql_fetch_assoc($retour_total); //On range retour sous la forme d'un tableau.
    $total=$donnees_total['total']; //On récupère le total pour le placer dans la variable $total.
     
    //Nous allons maintenant compter le nombre de pages.
    $nombreDePages=ceil($total/$messagesParPage);
     
    if(isset($_GET['page'])) // Si la variable $_GET['page'] existe...
    {
         $pageActuelle=intval($_GET['page']);
     
         if($pageActuelle>$nombreDePages) // Si la valeur de $pageActuelle (le numéro de la page) est plus grande que $nombreDePages...
         {
              $pageActuelle=$nombreDePages;
         }
    }
    else // Sinon
    {
         $pageActuelle=1; // La page actuelle est la n°1    
    }
     
    $premiereEntree=($pageActuelle-1)*$messagesParPage; // On calcul la première entrée à lire
     
    // La requête sql pour récupérer les messages de la page actuelle.
    $retour_messages=mysql_query('SELECT * FROM jeux_video ORDER BY id DESC LIMIT '.$premiereEntree.', '.$messagesParPage.'');
     
    while($donnees_messages=mysql_fetch_assoc($retour_messages)) // On lit les entrées une à une grâce à une boucle
    {
         //Je vais afficher les messages dans des petits tableaux. C'est à vous d'adapter pour votre design...
         //De plus j'ajoute aussi un nl2br pour prendre en compte les sauts à la ligne dans le message.
         echo '<h3 class="subheader"><a href="'.stripslashes($donnees_messages["jeux"]).'-'.stripslashes($donnees_messages["titre"]).'-'.stripslashes($donnees_messages["ID"]).'.php"><'.stripslashes($donnees_messages["date"]).'</a></h3>
            <span class="date"><a href="'.stripslashes($donnees_messages["jeux"]).'-'.stripslashes($donnees_messages["titre"]).'-'.stripslashes($donnees_messages["ID"]).'.php">Plus de détails</a></span>
     </div>';
     
     
     
     
     
     
     
        //J'ai rajouté des sauts à la ligne pour espacer les messages.   
    }
     
    echo '<p align="center">Page : '; //Pour l'affichage, on centre la liste des pages
    for($i=1; $i<=$nombreDePages; $i++) //On fait notre boucle
    {
         //On va faire notre condition
         if($i==$pageActuelle) //Si il s'agit de la page actuelle...
         {
             echo ' [ '.$i.' ] '; 
         }	
         else //Sinon...
         {
              echo ' <a href="index.php?page='.$i.'">'.$i.'</a> ';
         }
    }
    echo '</p>';
    ?>
     
     
     
     
    </body>
    </html>
    Mais sa foire oO
    Si quelqu'un aurait une piste je suis preneur ;-)
    Je crois que sa foire car le code de ma page initiale est écrit en html classique et que je dois le basculer dans un 'echo'

  5. #5
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Qu'est ce qui ne fonctionne pas exactement ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    386
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 386
    Par défaut
    En faite je n'arrive pas à intégrer ce code dans un echo :
    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
    $abcd = $donnees_messages["ID"];
    $des = "txt/txt_court/$abcd.txt"; 
     
    if(is_file($des))//contrôle que le fichier existe
    {    
        echo file_get_contents($des);      
    }
    else
    {
        echo "fichier non disponible";
    }	      
    <br />
    <strong>Jeux</strong> : 
     
    $v = $donnees_messages["jeux"];
    if($v ==null)
    echo "N/A";
    else
    echo ("<a href='$v'>$v</a>");
     
    <br/>
    <strong>toto</strong> : 
     
    $vv = $donnees_messages["toto"];
    if ($vv == null)
    echo "N/A";
    else
    echo ("<a href=mailto:$vv>$vv</a>");
     
    <br/>
     
    <strong>toto2</strong> : 
     
    $vvv = $donnees_messages["toto2"];
    if($vvv ==null)
    echo "N/A";
    else
    echo $vvv;
    Mais je ne sais pas trop pourquoi j"'ai ce message :
    Parse error: syntax error, unexpected '<' Pardon maintenant le code n'est interpreté et apparait tel quel sur le navigateur

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Creer une pagination avec pointillets
    Par Interface dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 28/11/2009, 16h40
  2. [TP]comment creer une disquette bootable (les fichiers)
    Par ludovic5532 dans le forum Turbo Pascal
    Réponses: 5
    Dernier message: 25/10/2003, 18h46
  3. Créer une diquette de boot
    Par gwen-al dans le forum Administration système
    Réponses: 2
    Dernier message: 02/07/2003, 14h48
  4. jaimerais savoir commen creer une grille.......
    Par zephyr dans le forum Flash
    Réponses: 5
    Dernier message: 29/04/2003, 12h14
  5. [VB6]Créer une Base de données
    Par ThierryAIM dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 07/04/2003, 17h24

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