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 :

Faire une recherche dans la base de données et créer de nouvelles pages [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre régulier Avatar de japhettchabao
    Homme Profil pro
    Développeur Java
    Inscrit en
    Septembre 2014
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : Togo

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2014
    Messages : 86
    Points : 75
    Points
    75
    Par défaut Faire une recherche dans la base de données et créer de nouvelles pages
    bonjour, j'aimerais faire un select des (titres, resumé) dans une table dans des div, et après 6 affichages, creer une page 2 ou sa continue pour afficher le reste et ainsi de suite. merci d'avance
    Je n'ai certes pas le talent de Gates ou Job mais, mon amour mon pc, me rend plus fort qu'eux

  2. #2
    Membre émérite
    Homme Profil pro
    tripatouilleur de code pour améliorer mon quotidien boulistique
    Inscrit en
    Février 2008
    Messages
    939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : tripatouilleur de code pour améliorer mon quotidien boulistique
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2008
    Messages : 939
    Points : 2 287
    Points
    2 287
    Par défaut
    Bonjour

    Arrêtez moi si je me trompe.

    Vous avec une requête qui vous retourne "n" enregistrements.

    Sur la permière page, vous voulez afficher les 6 premiers résultats.
    Sur la seconde page, vous voulez afficher les 6 suivants, etc.

    Dans ce cas, il faut utiliser la clause "LIMIT" au mot clé "SELECT".
    Exemple :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM la_table LIMIT 10

    On peut utiliser cette "LIMIT", pour afficher une partie des résultats.
    Exemple
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT *
    FROM table
    LIMIT 5, 10;

    Cette requête retourne les enregistrements 6 à 15 d’une liste de résultats.


    En espérant vous avoir aidé...

    Pierre

  3. #3
    Membre régulier Avatar de japhettchabao
    Homme Profil pro
    Développeur Java
    Inscrit en
    Septembre 2014
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : Togo

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2014
    Messages : 86
    Points : 75
    Points
    75
    Par défaut il s'agit d'une pagination
    j'utilise pdo et le nombre d'enregistrement est illimité
    Je n'ai certes pas le talent de Gates ou Job mais, mon amour mon pc, me rend plus fort qu'eux

  4. #4
    Membre émérite
    Homme Profil pro
    tripatouilleur de code pour améliorer mon quotidien boulistique
    Inscrit en
    Février 2008
    Messages
    939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : tripatouilleur de code pour améliorer mon quotidien boulistique
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2008
    Messages : 939
    Points : 2 287
    Points
    2 287
    Par défaut
    Bonjour

    Que vous utilisiez PDO et que vos enregistrements soient illimité n'intervient pas.
    Le but est de sélectionner une partie des enregistrements (en utilisant la clause "LIMIT") et de l'afficher.

    Pierre

  5. #5
    Membre régulier Avatar de japhettchabao
    Homme Profil pro
    Développeur Java
    Inscrit en
    Septembre 2014
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : Togo

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2014
    Messages : 86
    Points : 75
    Points
    75
    Par défaut j'ai fait ceci mais les resultats ne s'affichent pas sur la page suivante
    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
     <?php
                  $nombre_de_msg_par_page=7; // On met dans une variable le nombre de messages qu'on veut par page
     
    // On récupère le nombre total de messages
     
    $reponse=$bdd->query('SELECT COUNT(*) AS contenu FROM finances');
    $total_messages = $reponse->fetch();
    $nombre_messages=$total_messages['contenu'];
     
     
     
    // on détermine le nombre de pages
    $nb_pages = ceil($nombre_messages / $nombre_de_msg_par_page);
     
     
    // Puis on fait une boucle pour écrire les liens vers chacune des pages
    for ($i = 1 ; $i <= $nb_pages ; $i++)
    {
        echo "<fieldset id='pagin'>"
        . '<ul class="pagination">'
                . '<li><a  href="politique.php?page=' . $i . '">' . $i . '</a> </li>'
                . '</ul></fieldset>';
    }
     
     
    // Maintenant, on va afficher les messages
    // ---------------------------------------
     
    if (isset($_GET['page']))
    {
        $page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livredor.php?page=4)
    }
    else // La variable n'existe pas, c'est la première fois qu'on charge la page
    {
        $page = 1; // On se met sur la page 1 (par défaut)
    }
     
    // On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
    $premierMessageAafficher = ($page - 1) * $nombre_de_msg_par_page;
     
    // On ferme la requête avant d'en faire une autre
    $reponse->closeCursor();
    $reponse = null;
     
    $reponse = $bdd->query('SELECT * FROM finances ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombre_de_msg_par_page);
     
    while ($donnees = $reponse->fetch())
    {
        echo '<fieldset id="afficherecherche">'
        . '<p><img class="imageflottante" src="articles/'.($donnees['image']) .' " width="300px" height="500px"/>'   
        . '<strong>' . stripslashes(htmlspecialchars($donnees['titre'])) . '</strong> '
                . ' :<br />' . stripslashes(htmlspecialchars($donnees['resume'])) . ''
                . '<br/><br/></p></fieldset>';
    }
     
    $reponse->closeCursor();
    $reponse = null;
     
                  ?>
    Je n'ai certes pas le talent de Gates ou Job mais, mon amour mon pc, me rend plus fort qu'eux

  6. #6
    Membre régulier Avatar de japhettchabao
    Homme Profil pro
    Développeur Java
    Inscrit en
    Septembre 2014
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : Togo

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2014
    Messages : 86
    Points : 75
    Points
    75
    Par défaut J'ai trouvé l'erreur
    ligne 21 au lieu de rediriger sur finances, j'ai mis politique, je travaillais sur les 2 pages alors je me suis un peu embrouillé
    Je n'ai certes pas le talent de Gates ou Job mais, mon amour mon pc, me rend plus fort qu'eux

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

Discussions similaires

  1. programme pour faire une recherche dans base de donnee
    Par fanfanfan dans le forum Windows
    Réponses: 3
    Dernier message: 14/10/2014, 07h17
  2. Comment faire une recherche sur la base de donnée entière
    Par -Fly- dans le forum Sql Developer
    Réponses: 2
    Dernier message: 27/05/2011, 15h07
  3. Réponses: 1
    Dernier message: 21/10/2009, 17h26
  4. [MySQL] Problème avec les accent lors d'une recherche dans ma base de donnée
    Par pierrot10 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 16/06/2009, 14h08
  5. [VB.NET] Faire une recherche dans une treeview
    Par Aspic dans le forum VB.NET
    Réponses: 3
    Dernier message: 15/11/2005, 19h10

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