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 :

un slider dynamique qui ne sélectionne pas les bonnes images


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Avril 2011
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2011
    Messages : 127
    Par défaut un slider dynamique qui ne sélectionne pas les bonnes images
    Bonjour à tous,

    Je tente actuellement de mettre en place un système de slider dynamique, et je galère un peu.

    Voici comment j'ai imaginé les choses.

    Tables SGBD:

    1. table posts (gestion des pages)
      Avec les champs id, name, slug, content, type, slider_id
    2. table images(gestion des images)
      Avec les champs id, name, slider_id
    3. table sliders(gestion des sliders)
      Avec les champs id, name, page_id



    Ensuite, dans mon l'index qui gère les pages, j'ai réalisé ceci:
    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
     
    <?php
    /**
     * GESTION des PAGES 
     * */
    $slug = $db->quote($_GET['slug']);
    $select = $db->query("SELECT * FROM posts WHERE slug = $slug AND type='page'");
     
    $page = $select->fetch();
    $page_id = $page['id'];
    $title = $page['name'];
    $slider = $page['slider'];
     
    ?>
     
    <?php
    if($slider != 0){
        include 'partials/slider.php';
    }
    ?>
    J'inclus donc le fichier slider.php si le champ slider_id est différent de 0.
    Mon inclusion fonctionne nickel, et le slider s'affiche uniquement sur les pages dont le champ slider n'est pas null.

    Ensuite, j'ai donc le fichier slider.php 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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
     
    <?php
     
    /**
    * SELECT DU SLIDER
    **/
    $slider = $db->query("
            SELECT sliders.id, sliders.name, sliders.page_id
            FROM sliders
            LEFT JOIN images ON images.slider_id;
    ")->fetch();
     
    /**
    * SELECT DES IMAGES
    **/
    $images = $db->query("
        SELECT images.id, images.name, images.slider_id
        FROM images
        INNER JOIN sliders ON sliders.id = images.slider_id
    ")->fetchAll();
    ?>
     
    <!-- POUR LE SLIDER -->
    <div class="carousel-holder">
        <div class="col-md-12">
            <div id="carousel-example-generic" class="carousel slide" data-ride="carousel">
                <ol class="carousel-indicators">
                    <li data-target="#carousel-example-generic" data-slide-to="0" class="active"></li>
                    <li data-target="#carousel-example-generic" data-slide-to="1"></li>
                    <li data-target="#carousel-example-generic" data-slide-to="2"></li>
                </ol>
                <div class="carousel-inner">
                    <?php $n=0; foreach ($images as $k[] => $image): $n++ ?>
                        <div class="item<?php if($n==1) echo ' active' ?>">
                            <img src="<?= WEBROOT; ?>img/sliders/<?= resizedName($image['name'], 680, 390); ?>" class="img-responsive">
                        </div>
                    <?php endforeach ?>
                </div>
                <a class="left carousel-control" href="#carousel-example-generic" data-slide="prev">
                    <span class="glyphicon glyphicon-chevron-left"></span>
                </a>
                <a class="right carousel-control" href="#carousel-example-generic" data-slide="next">
                    <span class="glyphicon glyphicon-chevron-right"></span>
                </a>
            </div>
        </div>
    </div>
    Le slider est fonctionnel, le seul souci que j'ai, c'est que dans ce slider se trouvent toutes les images présentent dans ma table, alors que je souhaite afficher uniquement les images qui correspondent au slider en question...

    J'ai essayé diverses requêtes SQL, mais je commence à m'embrouiller je pense.
    J'en appel donc à votre savoir lol, histoire de voir où je bug

    D'avance merci à vous pour l'aide

  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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $images = $db->query("
        SELECT images.id, images.name, images.slider_id
        FROM images
        INNER JOIN sliders ON sliders.id = images.slider_id
        WHERE sliders.id = " . $page['slider'])->fetchAll();
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Avril 2011
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2011
    Messages : 127
    Par défaut
    C'était donc tout simplement ça...
    Ah ben ça se voit qu'hier était dimanche lol, embrouille totale pour moi

    Merci de votre aide!

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

Discussions similaires

  1. [CS5] Texte dynamique qui ne fonctionne pas avec tous les chiffres
    Par Shikam dans le forum ActionScript 1 & ActionScript 2
    Réponses: 1
    Dernier message: 10/12/2010, 07h17
  2. Requete qui n'affiche pas les bonnes valeurs
    Par snips67 dans le forum Langage SQL
    Réponses: 11
    Dernier message: 29/01/2010, 10h54
  3. [Requete] qui n'affiche pas les doublons mais sur un seul champs
    Par joseph.breham dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 19/12/2006, 14h57
  4. Requête qui ne sélectionne pas tout
    Par Miss Ti dans le forum Requêtes et SQL.
    Réponses: 13
    Dernier message: 25/07/2006, 15h18

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