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

JavaScript Discussion :

slider images, je n'arrive pas à intégrer une requête SQL


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 13
    Par défaut slider images, je n'arrive pas à intégrer une requête SQL
    Boujour,
    j'ai récupérer un script de slide d'images en js.
    Le soucis c'est que je n'arrive pas à intégrer de requête sql dans ce script:

    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
    <script language="JavaScript1.1">
     
    //specify interval between slide (in mili seconds)
    var slidespeed=3000
    //specify images
     
    var slideimages=new Array("photo/1.jpg","photo/2.jpg","photo/3.jpg")
    //specify corresponding links
     
    var imageholder=new Array()
    var ie55=window.createPopup
    for (i=0;i<slideimages.length;i++){
    imageholder[i]=new Image()
    imageholder[i].src=slideimages[i]
    }
     
    function gotoshow(){
    window.location=slidelinks[whichlink]
    }
     
    //-->
    </script>
    Ma requête est simple du style:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $sql="SELECT * FROM photo" ;
    $r = mysql_db_query($database, $sql);
    while ($t=mysql_fetch_row($r)){
    $cpt++;

    Comment l'intégrer dans le javascript ?

    Merci pour votre contribution.

  2. #2
    Membre éclairé Avatar de xess91
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    408
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 408
    Par défaut
    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
     
    <script language="JavaScript1.1">
     
    var slidespeed = 3000 ;
     
    <?php
    $rqt = mysql_query("SELECT * FROM photo") ;
     
    $i = 0 ;
     
    $arrayJs = "var slideimages = new Array(" ;
     
    while($tab = mysql_fetch_array($rqt))
         {
          $photo = $tab['champ_de_la_photo'] ;
         if($i == 0)
              {
               $arrayJs .= "'photo/".$photo."'" ;
              }
         else
              {
              $arrayJs .= ", 'photo/".$photo."'" ;
              }
         $i++ ;
         }
    $arrayJs .= ") ;" ;
     
    echo $arrayJs ;
    ?>
     
    var imageholder = new Array() ;
    var ie55 = window.createPopup ;
    for (i=0;i<slideimages.length;i++){
    imageholder[i] = new Image() ;
    imageholder[i].src = slideimages[i] ;
    }
     
    function gotoshow(){
    window.location = slidelinks[whichlink] ;
    }
     
    //-->
    </script>
    Voila une solution possible, attention ton javascript n'avait pas de ";".

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 13
    Par défaut
    Salut xess91,

    je viens de tester ta solution mais je n'arrive pas à la faire tourner.
    Peux-tu jeter un oeil sur ton code à nouveau et me dire si tu vois une erreur?
    J'ai bien vérifier les noms de répertoire/champs concernés.

    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
    <?php
    $link = mysql_connect($hostname, $username, $password);
    $rqt = mysql_query("SELECT * FROM photo") ;
     
    $i = 0 ;
     
    $arrayJs = "var slideimages = new Array(" ;
     
    while($tab = mysql_fetch_array($rqt))
         {
          $photo = $tab['id'] ;
         if($i == 0)
              {
               $arrayJs .= "'photos/latelier_".$photo.".jpg'" ;
              }
         else
              {
              $arrayJs .= "'photos/latelier_".$photo.".jpg'" ;
              }
         $i++ ;
         }
    $arrayJs .= ") ;" ;
     
    echo $arrayJs ;
    ?>
    Merci pour ton aide.

  4. #4
    Membre éclairé Avatar de xess91
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    408
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 408
    Par défaut
    Déjà il te manque la virgule pour séparer les données de ton tableau, tu as mal recopié...quelle que soit la condition ton if et else font la même chose, ça n'a pas de sens.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    if($i == 0)
              {
               $arrayJs .= "'photos/latelier_".$photo.".jpg'" ;
              }
         else
              {
              $arrayJs .= ", 'photos/latelier_".$photo.".jpg'" ;
              }
    Sinon qu'est ce que le echo $arrayJs écrit, une fois que tu as fait la correction ?

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 13
    Par défaut
    le echo renvoi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var slideimages = new Array() ;
    J'avais zappé la virgule mais elle n'a rien changée.
    Désolé de t'embêter mais si tu vois autre chose fais moi savoir.
    Merci.

  6. #6
    Membre éclairé Avatar de xess91
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    408
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 408
    Par défaut
    Dans ce cas la, c'est que ta requête SQL renvoie rien et que tu ne rentres pas dans la boucle "while"...

    Connais tu le php et le SQL? et as-tu compris la méthode que je te suggère ?

    De plus sur l'exemple que tu montres tu sélectionnes aucune bdd SQL

    ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    mysql_connect("localhost", "root", "") ;
    //
    mysql_select_db("maBase") ;//absent
    //
    mysql_query("maRequete") ;

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 29/07/2015, 17h54
  2. [AC-2010] Comment intégrer une requête SQL dans un Trigger
    Par plaulie dans le forum VBA Access
    Réponses: 3
    Dernier message: 06/02/2015, 13h56
  3. Réponses: 3
    Dernier message: 12/12/2008, 08h05
  4. Comment intégrer une requête SQL dans Rails ?
    Par Didier Pitre dans le forum Ruby on Rails
    Réponses: 2
    Dernier message: 28/05/2008, 08h59
  5. Je n'arrive pas à recuperer une image
    Par lemonsoda dans le forum Langage
    Réponses: 6
    Dernier message: 26/01/2006, 09h32

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