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

PHP & Base de données Discussion :

Calcul du temps


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 171
    Par défaut Calcul du temps
    Bonjour
    Je ne sais pas comment faire après avoir récupérer de ma table, le temps qui est enregistré en secondes avec 3 chiffre après la virgule
    Exemple; enregistrement de 64.235 est égal à 1 tour de piste
    Là c'est asser clair
    Moi il faut que j'affiche 1.04.235 là on serai dans la normalité
    Mais j'ignore comment procedé
    on peut arrivé à 123.685 par exemple donc faut toujours que je puisse affiché 2.03.685.
    Voilà j'ai tout dis
    un visuel http://www.sim-multi-racing-car.com/...w/monitor2.php
    Merci de votre aide

    @+

  2. #2
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 506
    Par défaut
    Toutes petite recherche sur ce site :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $totalsecondes = 1324324;
    $secondes = $totalsecondes % 60;
    $minutes = ($totalsecondes / 60) % 60;
    $heures = ($totalsecondes / (60 * 60));
     
    echo $heure.'.'.$minutes.'.'.$secondes;

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 171
    Par défaut
    Salut
    Une question avant que je me lance dans l'inconnu
    Le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $totalsecondes = 123456789;
    ok mais avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $totalsecondes = 64.235;
    je vais avoir quoi ?
    Je cherche que les minutes et secondes avec 3chiffres dérrière. C'est même obligatoire dans ce que je veux affiché.

    Je croyais qu'il fallait prendre les 2 voir 3 chiffres devant, et les convertir pour en avoir des minutes,secondes,et 100ième de secondes, si cela dépasse 59 bien sur pour les secondes minutes et heures.

    Je me pose une question : Et si l'on récupère les chiffres avant le point, là ton code s'applique ?
    y a juste à garder de cote alors les 3 derniers chiffres.

    Vrai ou faux ?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonsoir,
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php 
    function formate_temps($tps_initial)
    {
    	// $tps_initial de la forme : 123.685
    	$tps_entier 	= floor($tps_initial);
    	$tps_millieme 	= ($tps_initial-$tps_entier);
    	$tps_seconde 	= ($tps_entier % 60);
    	$tps_minute 	= ($tps_entier-$tps_seconde)/60;
    	// affichage de la forme : 2.03.685
    	$tps_final 	= ($tps_minute>0)? $tps_minute.'.' : '';
    	$tps_final 	.= (($tps_seconde+$tps_millieme)<10)? '0'.($tps_seconde+$tps_millieme) : ($tps_seconde+$tps_millieme);
    //	return $tps_final;
    	return $tps_initial.' => '.$tps_final; // pour TEST
    }
    ?>
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php 
    echo formate_temps(32.876).'<br />';
    echo formate_temps(64.235).'<br />';
    echo formate_temps(123.685).'<br />';
    echo formate_temps(456.789).'<br />';
    echo formate_temps(987.654).'<br />';
    ?>
    Donne :
    32.876 => 32.876
    64.235 => 1.04.235
    123.685 => 2.03.685
    456.789 => 7.36.789
    987.654 => 16.27.654

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 171
    Par défaut
    Merci je testerai cela demain
    Mais ca à l'air d'être ce que je recherchais.
    Je repasse demain dire ce qu'il en est.

    Juste une petite confirmation le serait la valeur de ma table, on est bien d'accord ?
    Merci encore.

  6. #6
    Invité
    Invité(e)
    Par défaut
    Une autre formule, incluant les heures :
    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
    <?php 
    function formate_temps($tps_initial)
    {
    	// $tps_initial de la forme : 123.685
    	$tps_entier 	= floor($tps_initial);
    	$tps_millieme 	= round(($tps_initial-$tps_entier)*1000);
    	$tps_seconde 	= ($tps_entier % 60);
    	$tps_minute 	= ($tps_entier/60) % 60;
    	$tps_heure 		= ($tps_entier/(60*60)) % 60;
    	// affichage de la forme : 2.03.685
    	$aff_heure		= ($tps_heure>0)? $tps_heure.'.' : '';
    	$aff_minute		= ($tps_heure>0 && $tps_minute<10 && $tps_minute>=0)? '0' : '';
    	$aff_minute		.= ($tps_minute>=0)? $tps_minute.'.' : '';
    	$aff_minute		= ($tps_heure==0 && $tps_minute==0)? '' : $aff_minute;
    	$aff_seconde	= ($tps_seconde<10)? '0'.$tps_seconde.'.' : $tps_seconde.'.';
    	$aff_millieme	= $tps_millieme;
    	$tps_final 		= $aff_heure.$aff_minute.$aff_seconde.$aff_millieme;
    //	return $tps_final;
    	return $tps_initial.' => '.$tps_final; // pour TEST
    }
    ?>
    32.876 => 32.876
    64.235 => 1.04.235
    123.685 => 2.03.685
    456.789 => 7.36.789
    987.654 => 16.27.654
    1234.567 => 20.34.567
    34567.321 => 9.36.07.321
    56789.012 => 15.46.29.012
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php
    echo formate_temps($valeur_dans_la_table)
    ?>

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 171
    Par défaut
    Lol J'en demandais pas autant
    Mais Merci tout de même
    Je test demain enfin tout à l'heure dès que je serais rentrer

  8. #8
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    Y'a tout ce qu'il faut dans php pour faire ç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
    $time = DateTime::createFromFormat('U.u', '123.685');
    $zero = new DateTime('@0');
     
    $micro = ($time->format('u') - $zero->format('u')) / 1000;
    $diff = $zero->diff($time);
     
    $output = array(
        $diff->h ? $diff->format('%H') : '',
        $diff->i ? $diff->format('%I') : '',
        $diff->s ? $diff->format('%S') : '',
        $micro ? sprintf('%03d', $micro) : ''
    );
     
    echo implode('.', array_filter($output));

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 171
    Par défaut
    Re
    Bon tout a l'heure lol je vais tester tout cela.

    C'est vrai qu'avec PHP y a tout ce qu'il faut mais il y en a tellement que l'on ne sait plus par où aller mais le forum et vous , êtes là pour nous aiguiller.

    Même si c'est vous qui avez fait ce code, je méditerai pour le comprendre car même ci je vais le réécrire, je chercherai son fontionnement, car mon but est d'apprendre tout de même.
    Merci bien

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 171
    Par défaut
    Re
    Bon pas encore résolu stafaire
    lol avec les codes que ce soit l'un ou l'autre dans mon tableau soit il m'affiche qu'une ligne soit rien du tout.
    Ma requete sql est ci-dessous
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $req = mysql_query("select TrackName,DriverName,VehicleClass,LapNo,LapTime,Sec1,Sec2,Sec3 from hotlaps where TrackName='$Track' order by LapTime ASC");
    Hé oui je code en traditionnel mais on s'en fiche puisque cela fonctionne habituellement
    Bref le problème est que je n'ai rien d'affiche nada kechi
    Bref pas simple lol
    Je mets le code juste après le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    while($resultat=mysql_fetch_array($req)){
      $LapTime =$resultat['LapTime'];
    ce qui donne ceci
    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
    $time = DateTime::createFromFormat('U.u', $LapTime);
    $zero = new DateTime('@0');
     
    $micro = ($time->format('u') - $zero->format('u')) / 1000;
    $diff = $zero->diff($time);
     
    $output = array(
        $diff->h ? $diff->format('%H') : '',
        $diff->i ? $diff->format('%I') : '',
        $diff->s ? $diff->format('%S') : '',
        $micro ? sprintf('%03d', $micro) : ''
    );
     
    echo "<table width='70%'>
                     <td width='25%'>".$resultat['DriverName']."</td>
                     <td width='25%'>".$resultat['VehicleClass']."</td>
                     <td width='10%'>".$resultat['LapNo']."</td>
                     <td width='10%'>";
                     echo implode('.', array_filter($output));
                     echo "</td>
                     <td width='10%'>".$resultat['Sec1']."</td>
                     <td width='10%'>".$resultat['Sec2']."</td>
                     <td width='10%'>".$resultat['Sec3']."</td></tr></table>";
                     }
                     echo "<br />";
    J'aoi essayer celui ci
    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
    $LapTime =$resultat['LapTime'];
    function formate_temps($LapTime)
    {
      // $tps_initial de la forme : 123.685
      $tps_entier   = floor($LapTime);
      $tps_millieme   = round(($LapTime-$tps_entier)*1000);
      $tps_seconde   = ($tps_entier % 60);
      $tps_minute   = ($tps_entier/60) % 60;
      $tps_heure     = ($tps_entier/(60*60)) % 60;
      // affichage de la forme : 2.03.685
      $aff_heure    = ($tps_heure>0)? $tps_heure.'.' : '';
      $aff_minute    = ($tps_heure>0 && $tps_minute<10 && $tps_minute>=0)? '0' : '';
      $aff_minute    .= ($tps_minute>=0)? $tps_minute.'.' : '';
      $aff_minute    = ($tps_heure==0 && $tps_minute==0)? '' : $aff_minute;
      $aff_seconde  = ($tps_seconde<10)? '0'.$tps_seconde.'.' : $tps_seconde.'.';
      $aff_millieme  = $tps_millieme;
      $tps_final     = $aff_heure.$aff_minute.$aff_seconde.$aff_millieme;
    //  return $tps_final;
      return $tps_final; // pour TEST
    }
    echo "<table width='70%'>
                     <td width='25%'>".$resultat['DriverName']."</td>
                     <td width='25%'>".$resultat['VehicleClass']."</td>
                     <td width='10%'>".$resultat['LapNo']."</td>
                     <td width='10%'>";
                     echo formate_temps($LapTime);
                     echo "</td>
                     <td width='10%'>".$resultat['Sec1']."</td>
                     <td width='10%'>".$resultat['Sec2']."</td>
                     <td width='10%'>".$resultat['Sec3']."</td></tr></table>";
                     }
                     echo "<br />";
    Soucis: 1 ligne uniquemt d'afficher
    Donc on avance tout de même
    serveur 1http://www.sim-multi-racing-car.com/...//monitor2.php
    serveur 2http://www.sim-multi-racing-car.com/...//monitor2.php

  11. #11
    Invité
    Invité(e)
    Par défaut
    Il faut sortir la fonction du while (il suffit de la déclarer UNE fois en haut de fichier)
    Le code de stealth35 peut aussi être mis dans une fonction.

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 171
    Par défaut
    Re
    Bon après quelques heures de sommeil on voit bien mieux sont code
    Bref Merci jreaux62 le code est ok
    Merci à tous pour votre participation.
    vous pouvez aller voir le résultat

    Merci encore

  13. #13
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 171
    Par défaut
    Re

    Bon après x tours de piste Je viens de voir un léger défaut mais pas des moindre dans les temps.
    En effet lorsque j'ai un temps par exemple de :1.02.021
    Le 021 m'affiche 1.02.21 donc pas bon car on pourrait supposer que c'est 1.02.210 alors que non

    Une idée ?

    Merci

  14. #14
    Expert confirmé
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Billets dans le blog
    12
    Par défaut
    Salut,

    reprends le code de stealth35, tu n'auras pas cette erreur :
    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
    <?php
     
    // POUR 1.02.021 soit 62.021 secondes
     
    $time = DateTime::createFromFormat('U.u', '62.021');
    $zero = new DateTime('@0');
     
    $micro = ($time->format('u') - $zero->format('u')) / 1000;
    $diff = $zero->diff($time);
     
    $output = array(
        $diff->h ? $diff->format('%H') : '',
        $diff->i ? $diff->format('%I') : '',
        $diff->s ? $diff->format('%S') : '',
        $micro ? sprintf('%03d', $micro) : ''
    );
     
    echo implode('.', array_filter($output));
     
    ?>
    Après je laisse le soin à jreaux62 de corriger sa fonction

  15. #15
    Invité
    Invité(e)
    Par défaut
    Hello, stealth35 est un grand spécialiste des fonctions PHP (entre autres) !
    Pour ma part, je suis spécialisé dans... les usines à gaz !

    J'ai donc repris son code, que je t'invite à l'utiliser :
    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
    <?php
    function formate_temps($LapTime)
    {
    	$time 	= DateTime::createFromFormat('U.u', $LapTime);
    	$zero 	= new DateTime('@0');
    	$micro 	= ($time->format('u') - $zero->format('u')) / 1000;
    	$diff 	= $zero->diff($time);
    	$output = array(
    		$diff->h ? 	$diff->format('%H') : '',
    		$diff->i ? 	$diff->format('%I') : '',
    		$diff->s ? 	$diff->format('%S') : '',
    		$micro ? 	sprintf('%03d', $micro) : ''
    	);
    	return implode('.', array_filter($output));
    }
    ?>
    Rassure-toi, moi non plus je ne comprends pas tout... mais ça fonctionne très bien !

    [edit] Oups ! grillé par rawsrc !
    Du coup, voici ma fonction corrigée !
    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
    <?php
    function formate_temps($LapTime)
    {
      // $tps_initial de la forme : 123.685
      $tps_entier	= floor($LapTime);
      $tps_millieme	= round(($LapTime-$tps_entier)*1000);
      $tps_seconde	= ($tps_entier % 60);
      $tps_minute	= ($tps_entier/60) % 60;
      $tps_heure	= ($tps_entier/(60*60)) % 60;
      // affichage de la forme : 2.03.685
      $aff_heure	= ($tps_heure>0)? $tps_heure.'.' : '';
      $aff_minute	= ($tps_minute>=0)? sprintf('%02d', $tps_minute).'.' : '';
      $aff_minute	= ($tps_heure==0 && $tps_minute==0)? '' : $aff_minute;
      $aff_seconde	= sprintf('%02d', $tps_seconde).'.';
      $aff_millieme	= sprintf('%03d', $tps_millieme);
      $tps_final	= $aff_heure.$aff_minute.$aff_seconde.$aff_millieme;
    	//  temps formaté :
      return $tps_final;
    }
    ?>
    PS : le code de stealth35 est bien meilleur !
    Dernière modification par Invité ; 01/05/2012 à 20h46.

  16. #16
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 171
    Par défaut
    Re
    Merci de votre soutien
    Le premier celui de stealth35
    n'affiche pas toute mes infos http://www.sim-multi-racing-car.com/...w/monitor2.php
    Le deuxième fonctionne
    http://www.sim-multi-racing-car.com/...//monitor2.php.
    Alors comme l'on m'a bien aide j'aimerai y mettre les deux versions
    le code html et php est entre vos mains au dessus
    Si vous voyez une erreur pour le premier code
    mais la portion qui affiche (en principe) est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    portion du tableau avant  <td width='10%'>";
     
    echo formate_temps($LapTime);
     
    echo "</td> suite du tableau
    Et aussi comment ajouter un affichage de différence entre chaque chronos ?
    exemple: 1.02.354 combien de temps entre 1.01.487
    Mais pour chaque chorons qui viendrait de la table
    Merci

  17. #17
    Invité
    Invité(e)
    Par défaut
    1/ Quoi qu'il arrive, donne-nous ton code :
    - il suffit d'une erreur d'inattention ou de copier-coller...
    - à moins d'un cas particulier non traité ?

    2/ Pour le calcul de différence, tu peux directement le faire avec tes $Laptime enregistrés en Bdd, non ?
    Pour l'afficher :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo formate_temps($LapTime1-$LapTime2);

  18. #18
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 171
    Par défaut
    Le code avec vos fonctions
    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
    function formate_temps($LapTime)
    {
      $time   = DateTime::createFromFormat('U.u', $LapTime);
      $zero   = new DateTime('@0');
      $micro   = ($time->format('u') - $zero->format('u')) / 1000;
      $diff   = $zero->diff($time);
      $output = array(
        $diff->h ?   $diff->format('%H') : '',
        $diff->i ?   $diff->format('%I') : '',
        $diff->s ?   $diff->format('%S') : '',
        $micro ?   sprintf('%03d', $micro) : ''
      );
      return implode('.', array_filter($output));
    }
    $req = mysql_query("select TrackName,DriverName,VehicleClass,LapNo,LapTime,Sec1,Sec2,Sec3 from hotlaps where TrackName='$Track' order by LapTime ASC") or die (mysql_error());
    echo "<div align='center'><h1>$Track</h1><br /><table width='70%'>
                     <td width='25%'>Pilotes</td>
                     <td width='25%'>Teams</td>
                     <td width='10%'>Nbr. tours</td>
                     <td width='10%'>Best Lap</td>
                     <td width='10%'>Sect. 1</td>
                     <td width='10%'>Sect. 2</td>
                     <td width='10%'>Sect. 3</td></tr></table>";
    while($resultat=mysql_fetch_array($req)){
      $LapTime =$resultat['LapTime'];
     
    // 2ieme choix :) //
     
     
    echo "<table width='70%'>
                     <td width='25%'>".$resultat['DriverName']."</td>
                     <td width='25%'>".$resultat['VehicleClass']."</td>
                     <td width='10%'>".$resultat['LapNo']."</td>
                     <td width='10%'>";
                     echo formate_temps($LapTime);
                     echo "</td>
                     <td width='10%'>".$resultat['Sec1']."</td>
                     <td width='10%'>".$resultat['Sec2']."</td>
                     <td width='10%'>".$resultat['Sec3']."</td></tr></table>";
                     }
                     echo "<br />";
    Merci encore

  19. #19
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 171
    Par défaut
    Re salut
    En partant de là
    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
    <?php
    function formate_temps($LapTime)
    {
      // $tps_initial de la forme : 123.685
      $tps_entier	= floor($LapTime);
      $tps_millieme	= round(($LapTime-$tps_entier)*1000);
      $tps_seconde	= ($tps_entier % 60);
      $tps_minute	= ($tps_entier/60) % 60;
      $tps_heure	= ($tps_entier/(60*60)) % 60;
      // affichage de la forme : 2.03.685
      $aff_heure	= ($tps_heure>0)? $tps_heure.'.' : '';
      $aff_minute	= ($tps_minute>=0)? sprintf('%02d', $tps_minute).'.' : '';
      $aff_minute	= ($tps_heure==0 && $tps_minute==0)? '' : $aff_minute;
      $aff_seconde	= sprintf('%02d', $tps_seconde).'.';
      $aff_millieme	= sprintf('%03d', $tps_millieme);
      $tps_final	= $aff_heure.$aff_minute.$aff_seconde.$aff_millieme;
    	//  temps formaté :
      return $tps_final;
    }
    ?>
    Je n'arrive pas à exploiter ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo formate_temps($LapTime1-$LapTime2);
    J'obtiens 0 ce qui est normal car je ne sais pas comment récupéré ce $LapTime2.
    Surtout que la première ligne doit être 0 cela ok mais les suivante affiché la différence.
    Vraiment pas simple.
    Dans quoi me suis-je embarqué

    Merci

  20. #20
    Invité
    Invité(e)
    Par défaut
    $LapTime2 est le temps de la boucle précédente.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $LapTime2 = 0;
    while (...) // boucle
    {
      //requete
      $LapTime1 = $row['LapTime'];
      // différence :
      $diff_LapTime = $LapTime1 - $LapTime2;
      echo formate_temps($diff_LapTime);
      $LapTime2 = $LapTime1; // (pour la boucle suivante)
      //[...]
    }

Discussions similaires

  1. comment calculer le temps d'execution
    Par passion_info dans le forum C++Builder
    Réponses: 1
    Dernier message: 09/06/2005, 09h13
  2. Calculer le temps passé
    Par Joeleclems dans le forum MFC
    Réponses: 4
    Dernier message: 29/04/2005, 09h40
  3. calculer le Temp écoulé
    Par ada_b dans le forum SQL
    Réponses: 1
    Dernier message: 30/11/2004, 09h44
  4. [MFC] : CTime ? Calcul de temps d'éxécution
    Par jonzuzu dans le forum MFC
    Réponses: 10
    Dernier message: 25/05/2004, 14h22
  5. Réponses: 8
    Dernier message: 18/09/2002, 03h20

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