int -> hh:mm:ss

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : int -> hh:mm:ss

par Ryle » 26 déc. 2006, 13:01

c'etait bien de js dont j avais besoin.

il n y a donc pas d'equivalent au date() du php en js ? snif...

ben merci pour tout je vais me debrouiller avec ca !
Il existe un objet Date() en javascript. Je n'ai pas essayé, mais en lui donnant un nombre de seconde uniquement dans le constructeur (en mettant années, mois, heure, ... à 0) , il devrait automatiquement te le convertir et tu pourrais récupérer les valeurs dont tu as besoin :
// Date ( year, month, date, hour, minute, second )
var dte= new Date ( 2006, 0, 1, 0, 0, 3600 );
alert ( dte.getHours() +':'+ dte.getMinutes() +':'+ dte.getSeconds() );

par Sebe » 24 déc. 2006, 12:45

Salut,

Pour combler un besoin, j'ai dû travailler un fonction ... je la partage avec vous !
Note: J'ai repris la même valeur que Ripat pour être certain du résultat !
function formatHeure (){
	var nbr = 47735;
	if (nbr != 0) { 
		alert ("Le nbr " + nbr + " à mettre en heure !");
		var heure = Math.floor(nbr / 3600);
		var minute = Math.floor((nbr - (heure * 3600))/60 );
		var seconde = Math.floor(nbr - (heure * 3600) - (minute * 60));
		alert (heure + ":" + minute + ":" + seconde);
		return heure + ":" + minute + ":" + seconde;
	} else {
		return (false);
	}
Ce n'est certainement pas parfait mais je ne suis qu'un newbie de la programmation !

A+

par pafLaXe » 19 mars 2005, 20:52

c'etait bien de js dont j avais besoin.

il n y a donc pas d'equivalent au date() du php en js ? snif...

ben merci pour tout je vais me debrouiller avec ca !

par eSp » 19 mars 2005, 15:57

Voilà une soluton en JS pour transformer des secondes en minutes:

Code : Tout sélectionner

<script language="JavaScript"> <!-- var seconds=111; var min=parseInt(seconds/60); var sec=seconds%60; document.write(seconds+" secondes correspondent à "+min+"'"+sec+"''."); document.write("<br>"); // --> </script>
Pour la transformation en heures, c'est le même principe ! A toi de le faire :P

:wink: :wink:

par Ripat » 19 mars 2005, 09:40

Ce n'est pas du js mais comme on t'a posté une solution en php....
// test pour 13:15:35
$nbSec = 46800 + 900 + 35;

// pour supprimer les multiples de 24 heures éventuels.
$nbSec = fmod($nbSec, 86400);

// affichage résultat
echo date("H:i:s", $nbSec - 3600);

par Elie » 19 mars 2005, 06:03

Moi j'ai un code assez long mais tres complet :)
	function calcule_temps($time) {
	
		$temps_reel = "";
		
		// Jours
		if($time > 86400) {
		
		$nbjour = floor($time/86400);	
		if($nbjour > 1) $sj = "s";
		$time = $time - ($nbjour * 86400);
		$temps_reel .= $nbjour." jour".$sj." ";
		
		}
		
		// Heure
		if($time > 3600) {
		
		$nbheur = floor($time/3600);	
		if($nbheur > 1) $sh = "s";
		$time = $time - ($nbheur * 3600);
		$temps_reel .= $nbheur." heure".$sh." ";
		
		}
		
		// Minutes
		if($time > 60) {
		
		$nbminute = floor($time/60);	
		if($nbminute > 1) $sm = "s";
		$time = $time - ($nbminute * 60);
		$temps_reel .= $nbminute." minute".$sm." ";
		
		}
		
		if($time > 1) {
		
		$temps_reel .= $time." secondes";
		
		}
		
		return $temps_reel;
	}

int -> hh:mm:ss

par pafLaXe » 19 mars 2005, 03:49

bonjour,

je voudrais savoir si qqun connais un moyen simple et efficace (cad sans une foret d'ifs) de transformer un entier exprimant des secondes en une chaine au format 'hh:mm:ss' (et que le 'hh:' ne soit affiché que si besoin) ?

merci d'avance...