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 :

Un diaporama


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 35
    Points : 31
    Points
    31
    Par défaut Un diaporama
    Bonjour,

    Je dois realiser un diaporama pour une application, et j'ai decidé de la faire en javascript.
    J'ai regarder ce qui était deja fait mais rien ne correspondait exactement avec ce que je désire faire donc j'essaie de faire mon propre script

    Je veux recuperer les images a afficher a partir d'une BDD (nom de l'image), puis afficher au hasard une image differente a un intevalle de temps.

    J'ai reussi a recuperer les donnees de la BDD et a choisir une image au hasard.?
    Je rencontre un probleme pour repeter l'affichage a un intervalle de temps
    J'ai essayé setInterval et setTimeout mais sans succes

    Merci d'avacnce pour votre aide

    Voici mon code:

    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
    60
    61
    62
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>diap2</title>
    <script>
    function affiche(Pic)
    {
        var random = Math.round((Math.random()*(Pic.length-1)))
        // Generation d'une valeur alétoire
        var nom = Pic[random]
        document.write("<img src=VersionLocale/"+nom+" />")
    }
    </script>
    </head>
     
    <body>
     
    <script>
     
    var Pic = new Array()
     
    </script>
    <?php
    if (isset ($_POST['Diaporama']))
    {
        $diap = $_POST['Diaporama'];
        echo $diap;
        mysql_connect("localhost","root","");
        mysql_select_db("narcisse");
        $id_photo = mysql_query("SELECT id_photo FROM `contient` WHERE `nom_diapo` = '$diap' ");
        mysql_close();
        $i = -1;
        while ($donnees = mysql_fetch_array($id_photo))
        {
            $i++;
            $id = $donnees['id_photo'];
            mysql_connect("localhost","root","");
            mysql_select_db("narcisse");
            $cliche = mysql_query("SELECT cliche FROM `photo` WHERE `id_photo` = '$id' ");
            mysql_close();
            while ($donnees2 = mysql_fetch_assoc($cliche))
            {
                $photo = $donnees2['cliche'];
            }
    ?>
            <script>Pic[<?php echo $i ?>] = '<?php echo $photo ?>' </script>
    <?php
        }
    }
    else
    {
        echo "pas de diap de selectioner";
    }
    ?>
     
    <script>
    setInterval("affiche(Pic)",3000)
    </script>
     
    </body>
    </html>

  2. #2
    Membre confirmé Avatar de d-Rek
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2007
    Messages : 438
    Points : 455
    Points
    455
    Par défaut
    Essaye ça :
    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
    60
    61
    62
    <?php
    // Mettre ce bout de code dans un petit fichier à inclure sur tes pages (centraliser les fonctions importantes/utiles)
    /// config de la base de donnee
    define('SQL_SERVER','localhost');
    define('SQL_BDD','narcisse');
    define('SQL_USER','root');
    define('SQL_PASS','');
     
    function connexion() {
    	$db_link = @mysql_connect(SQL_SERVER,SQL_USER,SQL_PASS);
    	mysql_select_db(SQL_BDD);
    }
     
    function close() {
    	mysql_close();
    }
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>diap2</title>
    <script type="text/javascript">
    var i=0;
    function affiche(){
    	var random = Math.round((Math.random()*(Pic.length-1)));
    	// Generation d'une valeur alétoire
    	var nom = Pic[random];
    	var img=document.createElement('img');
    	img.src='VersionLocale/'+nom;
    	document.body.appendChild(img);
    	setTimeout(function(){affiche();}, 3000);
    }
    </script>
    </head>
    <body>
    <?php
    if(isset ($_POST['Diaporama'])){
    	$diap = $_POST['Diaporama'];
    	echo $diap;
    	connexion();
    	$id_photo = mysql_query("SELECT id_photo FROM `contient` WHERE `nom_diapo` = '$diap' ");
    	echo "<script>var Pic = new Array(";
    	$i=0;
    	while($donnees = mysql_fetch_array($id_photo)){
            $id = $donnees['id_photo'];
            $cliche = mysql_query("SELECT cliche FROM `photo` WHERE `id_photo` = '$id' ");
            while($donnees2 = mysql_fetch_assoc($cliche)){
                $photo = $donnees2['cliche']; // quand tu sors de ta boucle, $photo ne vaut qu'une valeur, la dernière ????!!!
            }
    		if($i>0){echo ",";}
    		echo "'".$photo."'";
    		$i++;
        }
    	echo ");</script>";
    }else{
    	echo "Aucun diapo sélectioné";
    }
    ?>
    <a onclick="affiche();" style="cursor:pointer;">TRY ME</a> (don't forget to check <img src="http://www.developpez.net/forums/images/buttons/resolu.gif"> on Developpez' forum community and perhaps to write a special thanks to d-Rek) <img src="http://www.developpez.net/forums/images/smilies/icon_biggrin.gif">
    </body>
    </html>

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 35
    Points : 31
    Points
    31
    Par défaut
    Merci de ta reponse d-Rek.

    J'ai essayé le code, il est mieux que ce que j'avais reussi a faire.
    Par contre, toutes les 3 secondes, il y a une nouvelle image qui est inséré sur la page. Et moi ce sue je veux c'est changer l'image.
    Peut etre que je mettais mal expliquer dans mon précédent message
    Je vais essayer de changer ca.

    Encore merci pour ta reponse.

  4. #4
    Membre averti
    Avatar de SoBaKa
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2006
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2006
    Messages : 242
    Points : 349
    Points
    349
    Par défaut
    même chose que d-Rek à peu de chose près alors :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <script type="text/javascript">
    var i=0;
    function affiche(){
    	var random = Math.round((Math.random()*(Pic.length-1)));
    	// Generation d'une valeur alétoire
    	var nom = Pic[random];
    	var img=document.getElementById('diap');
    	img.src='VersionLocale/'+nom;
    	setTimeout(function(){affiche();}, 3000);
    }
    </script>
    et dans ton code html tu dois avoir une balise :


  5. #5
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 644
    Points : 66 671
    Points
    66 671
    Billets dans le blog
    1
    Par défaut
    prenant soin d'avoir fait un preload des images ...

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 35
    Points : 31
    Points
    31
    Par défaut
    Merci de vos reponse

    Maintenant j'ai presque ce que je veux, c'est a dire qu'il y a bien le changement d'image mais j'aimerai que le diaporama demarre sans avoir besoin de clisuer sur un lien.

    Si quelqu'un peut encore aider un débutant en javascript.

    Encore merci et merci d'avance.

  7. #7
    Membre averti
    Avatar de SoBaKa
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2006
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2006
    Messages : 242
    Points : 349
    Points
    349
    Par défaut
    tout simplement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <body onload="affiche()">

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 35
    Points : 31
    Points
    31
    Par défaut
    Merci pour votre aide a tous ca fonctionne nickel

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

Discussions similaires

  1. Diaporama + pellicule photo...
    Par Alberto dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 17/12/2004, 20h12
  2. pb diaporama automatique...
    Par mussara dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 26/11/2004, 01h40
  3. [FLASH MX2004] Diaporama dynamique
    Par tougirl dans le forum Flash
    Réponses: 3
    Dernier message: 30/09/2004, 09h39
  4. diaporama
    Par Décibel dans le forum Flash
    Réponses: 9
    Dernier message: 12/11/2003, 21h16

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