[Javascript] - Compte à rebour ...

Fermé
Geoff - 11 avril 2006 à 20:41
 Vinc77ent - 22 janv. 2011 à 11:19
Bonjours à tous, j'ai un gros problème et s'en cela je ne pourrai pas finir mon site, alors je vous explique que je souhaite faire :
- j'ai un lien (en texte) "activer"
- lors du clique sur le lien je souhaite faire un décomtpe en heure seconde minute jour ... je récupère le temps de décomtpte en seconde d'une variable php et souhaite afficher un lien pour anuler le décomtpe
- lorsque le décomtpe est fini je souhaite mettre a jour une base de donnée..

Je ne sais pas si j'ai été clair mais cela est vraiment important merci de vos réponses

Geoff
A voir également:

7 réponses

Utilisateur anonyme
12 avril 2006 à 15:02
<html>
  <head>
   <script>
    var counter = 0;
    var tEnd;
    
    function activate(isActive){
      if(isActive==true){
	document.getElementsByName("activate")[0].style.display="none";
	document.getElementsByName("deactivate")[0].style.display="block";
        counter = 10; // en secondes, à récupérer de la valeur de ta variable
	decreaseCounter();
      }else{
	document.getElementsByName("deactivate")[0].style.display="none";
	document.getElementsByName("activate")[0].style.display="block";
	clearTimeout(tEnd);
      }
    }

    function decreaseCounter(){
	if(counter>0){
	  counter--;
          document.all("counter").innerHTML=counter;
          tEnd = setTimeout("decreaseCounter();",1000);	
	}else{
          clearTimeout(tEnd);
	  saveToDB();
        }
    }

    function saveToDB(){
      document.fillForm.submit();
    }
   </script>
  </head>
  <body>
    <div id="activate" name="activate" style="display: block;" onclick="activate(true);">
      Activer
    </div>
    <div id="deactivate" name="deactivate" style="display: none;" onclick="activate(false);">
    <div id="counter" name="counter">
    </div>
      Annuler
    </div>

    <form name="fillForm" action="http://www.yourserverlocation.org" method="GET">
      <table>
        <tr>
          <td>Nom:</td>
          <td><input type="text" name="lastname" id="lastname"/></td>
        </tr>
        <tr>
          <td>Prénom:</td>
          <td><input type="text" name="firstname" id="firstname"/></td>
        </tr>
      </table>
      <input type="hidden" name="Action" value="Save"/>
    </form>
  </body>
</html>


... mais essaye d'être un peu plus clair lorsque tu décris le problème.

;-)
HackTrack
3
P@ Messages postés 1709 Date d'inscription vendredi 7 juillet 2000 Statut Membre Dernière intervention 24 mars 2009 185
12 avril 2006 à 14:12
en effet, tu pourrais être plus clair ??

envoie un lien au cas où ca aiderait a mettre en situation ...
0
Alors je vais essayer d'être plus clair.
Sur ma page j'ai un lien "activer", je souhaite que quand quelqu'un clique sur ce lien, cela cache le lien d'activation et mette à la place un lien anuler (pour arréter le compteur)et aficcher le compteur juste au desus du lien annuler.
Quand au compteur, le temps de décompte, i lfaut le récupérer d'une variable que j'ai $temps (en php) elle est en seconde.
Lorsque lme dé"compte estr fini je souhaite mettre a jour ma base de doné mysql et réaffiché le lien activer avec un temps différent .. Jespère avoir été plus clair voilà merci d'avance
Geoff
0
Tout d'abord merci bien c'est presque cela que je voulait cependant je souhaite quele décomtpe reste actif lors de changement de page ... il ne faut pas qu'on est à recliquer ou que le temps recomencer à "0" pour la mise à jour de la base de données pourras tu m'expliquer comment cela se passe en javascript (dsl je je ne connait pas le javascript, et jen maleureusement besoin car le php ne gere pas les afichage en "temps réel". Encore merci et désolé si je ne suis une nouvelle fois pas très clair.
Geoff
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Juste une petite question, pourquoi le décompte ne s'affiche pas sous firefox :| ?
0
canarder-non-conecté
27 sept. 2008 à 13:26
Tous simplement parce que ce que tu veux faire est incompatible avec firefox !
0
HackTrack ton code HTML ne marche pas a cause des <form> alors si tu peut faire quelque chose...... :-J
0