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 :

modification d'une requete apres X seconde


Sujet :

JavaScript

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 60
    Points : 45
    Points
    45
    Par défaut modification d'une requete apres X seconde
    Bonjour à tous,
    Voila mon soucis, j'ai un div sur mon site dans lequel défile des news provenant de flux RSS.
    Cependant, je souhaiterais que l'adresse du flux RSS s'alterne.
    J'ai donc créé une table dans laquelle je met plusieurs adresse de flux rss.

    voici le code Javascript qui permet de lire les flux RSS :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <?php
    	$req = "select url from lmj_rss_slide limit 0,1";
    	$res = mysql_query($req);
    	$row = mysql_fetch_object($res);
    ?>
     
    	function initRssBoxScript()
    	{
    		insertAjaxContent('rssBox','<?php echo $row->url?>',5,4);
            }

    Concrétement, je voudrais que au bout de X secondes, ma requete qui est ici
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select url from lmj_rss_slide limit 0,1
    se transforme en
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select url from lmj_rss_slide limit 1,1
    puis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select url from lmj_rss_slide limit 2,1
    ... ... ...

    Cependant, je n'y connais rien en javascript et je ne sais pas comment faire cela. J'ai cru comprendre que settimeout pourrait servir mais je ne vois pas comment l'utiliser.

    Merci d'avance pour votre aide

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    Citation Envoyé par minimoof Voir le message
    Cependant, je n'y connais rien en javascript et je ne sais pas comment faire cela.
    En PHP

    Il te suffit de 2 variables session qui prennent alternativement les valeurs 0, 1, 2 ... et de les concaténer à ton SQL.

    Pas besoin que ça soit "piloté" par Javascript ...

    A+

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 60
    Points : 45
    Points
    45
    Par défaut
    Merci pour ta réponse.
    pk pour les variables de session, mais comment est ce que je peux les faire passer de 0, 1 et 2 toutes les X secondes? Il me semble avoir lu lors de mes recherches que pour pouvoir "jouer" avc le temps il fallait utiliser un language coté client comme le javascript...

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Euh... j'avoue que je comprends pas trop...
    A quoi ça te sert de modifier ta requête SQL alors que ta page a déjà été transmise ?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 60
    Points : 45
    Points
    45
    Par défaut
    désolé si je n'ai pas été assez clair.
    J'ai donc une fonction javascript
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    	function initRssBoxScript()
    	{
    		insertAjaxContent('rssBox','<?php echo $row->url?>',5,4);
            }
    Cette fonction javasript permet de lire les news d'un flux RSS.
    L'adresse du flux RSS est dans la variable $row->url.

    Cependant, dans la table qui contient le champ url, j'ai plusieurs ligne.
    lorsque je fais un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select url from rss_slide
    , cela me retourne toutes les lignes
    mais moi je voudrais recuperer tous les resultats avc a des moments différents.
    Je souhaites donc que $row->url vale la ligne 1 pendant 30 secondes puis la ligne 2 pendant 30sec...
    ce qui fera que ds ma fonction javascript
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    	function initRssBoxScript()
    	{
    		insertAjaxContent('rssBox','<?php echo $row->url?>',5,4);
            }
    $row->url vaudra une adresse de flux RSS, puis au bout de 30 secondes, cette varibale vaudra une autre adresse de flux RSS et affichera donc d'autre news.

    J'espere que c'est plus clair?

  6. #6
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Ben dans ce cas, je pense que le plus simple est de passer l'index de la news désirée dans insertAjaxContent() et à chaque appel de la fonction, tu modifies ce paramètre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    var index = 0;
    function initRssBoxScript()
    	{
    		insertAjaxContent('rssBox','<?php echo $row->url?>',5,4,index);
    		index++;
            }

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 60
    Points : 45
    Points
    45
    Par défaut
    J'ai du mal expliquer mon soucis...
    J'ai un amis qui m'a aidé, voila donc un debut de piste.
    Je me permet de poster le script qu'il ma donné ici, au cas ou quelqu'un aurait le méme soucis que moi.

    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
     
    <?php
    $row=array("'toot'","'ttt'","'dsgqdg'","'qdsgdsg'","'hgjfkphj'");//ta requette simplifié
    $count_row=count($row);
    //contruction du tableau url
    $array_url="new Array(";
    $array_url.= implode(",",$row);
    $array_url.=")";
    ?>
    <html>
    <head></head>
    <body onload="initRssBoxScript(0);">
    <script>
    function initRssBoxScript(nb)
    {
      var count= <?php echo($count_row-1); ?>; //récuperation du nombre d'element sur lequel boucler
      var url=<?php echo($array_url); ?>; //recuperation de la liste d'url
      var compt = nb;
      if (compt > count){
        compt=0;
      }
      alert(url[compt]);//a remplacer par ta fonction insertAjaxContent
      //insertAjaxContent('rssBox',url[compt],5,4); 
      compt=compt+1;
      setTimeout("initRssBoxScript("+compt+")",3000);
    } 
    </script>
    </body>
    </html>

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 04/03/2009, 09h55
  2. Modification d'une requete
    Par pkrvz dans le forum VBA Access
    Réponses: 2
    Dernier message: 25/06/2008, 19h53
  3. [C#] Fermer automatiquement une fenêtre après X secondes
    Par pi100 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 07/06/2007, 09h35
  4. [javascript]execution d'une fonction aprés n seconde
    Par ranell dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 14/04/2007, 17h04
  5. fermer une fenetre aprés 5 secondes
    Par gastoncs dans le forum WinDev
    Réponses: 2
    Dernier message: 01/03/2007, 09h56

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