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 :

Navigation dans BDD avec id non contigu [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 247
    Par défaut Navigation dans BDD avec id non contigu
    Bonjour, j'ai une page qui affiche les articles d'un dossier.
    (Un dossier par ex sur le réchauffement climatique peut avoir comme article:
    article 1: Définition
    article 2: conséquences etc...)


    Je voudrais afficher au bas de la page le titre de l'article suivant et celui de l'article précédent.
    La difficulté c'est que mes articles n'ont pas forcement des id contigu (1,2,3, etc...) mais peuvent avoir des id comme (1,5,9, etc...).

    Comment faire la navigation d'un article à l'autre?

    NB: j'ai pas de souci si les ID sont contigus

    Exemple:
    <<Définition réchauffement climatique Conséquence réchauffement climatique>>

  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
    Par défaut
    Comment passes-tu actuellement d'un article au suivant ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 247
    Par défaut
    Je prend l'Id de l'article en cours ensuite je l'incrémente ou décrémente.

    Exemple article suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $idPlus = intval($idArticleEncours)+1;
    	$sql2 = $connect_db->prepare("SELECT idart, titre, iddossier, alias FROM  
               article WHERE iddossier='".$idDossierEncours."' AND idart='".$idPlus."'");
    	$sql2->execute();
    	$articleSuiv = $sql2->fetch(PDO::FETCH_ASSOC);

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    à vrai dire, tu poses une bonne question...

    J'en ai une autre :
    comment détermines-tu le "précédent" et le "suivant" ?
    C'est-à-dire : comment écrire la requête des articles (avec ORDER BY...) qui permettra de choisir "précédent", "en cours" et "suivant" ?

    Tu parles d'id, mais l'ordre peut être "la date de l'article" ? "le titre" ? "la catégorie" ?...

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 247
    Par défaut
    Je procède par une réflexion simple peut-être même un peu naïve.
    Lorsque j'affiche un dossier, tous les articles sont aussi affichés par ordre croissant. la lecture se fait sur une autre page. Donc je fais un GET pour récupérer l'id de l'article (qui est lu).
    => le précédent sera : id récupéré par GET-1
    => le suivantsera : id récupéré par GET+1

  6. #6
    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
    Je ne comprends pas : tu dis toi même que tu ne peux pas faire +1 puisque les numéros ne se suivent pas.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Invité
    Invité(e)
    Par défaut
    Tu as bien compris que ton raisonnement simple ne fonctionne pas.
    Les id ne sont pas forcément contigus.

    Donc...

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

Discussions similaires

  1. stocker resultat checkbox dans BDD avec serialize
    Par mikael2235 dans le forum Langage
    Réponses: 3
    Dernier message: 20/08/2012, 01h21
  2. Probleme Insertion dans BDD avec dbaccess
    Par Mobybic dans le forum Bases de données
    Réponses: 4
    Dernier message: 08/03/2011, 20h14
  3. [MySQL] Insert fichier xml dans BDD avec des sous noeuds
    Par AntonyG43 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 19/01/2011, 15h50
  4. Enregistrement dans BDD avec boucle: Error!
    Par tryks dans le forum Langage
    Réponses: 8
    Dernier message: 24/05/2009, 17h32

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