temps en min:sec.cs

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 : temps en min:sec.cs

par AB » 26 août 2008, 23:56

Tu peux imaginer plusieurs méthodes.

Par exemple, pour la saisie du formulaire, tu pourrais faire 3 ou 4 champs de saisie "heures", "min", "sec", "centièmes" en ligne et l'utilisateur rentrerait un nombre dans les quatre champs (si champ vide->0). Clair et facile ensuite de faire la conversion pour avoir le total en centièmes ou en secondes avant de rentrer le résultat dans la base.

Cela fait quatre champs à remplir pour l'utilisateur, mais cela va aussi vite puisqu'à la place de saisir un symbole de séparation (':' et '.' dans ton exemple) il n'aurait qu'à appuyer sur la touche de tabulation pour se placer dans le champ suivant. Ce système de saisie s'avère à l'usage beaucoup plus rapide et de surcroit ça te facilite la conversion en une seule unité.

par orgerix » 26 août 2008, 20:00

Peut être que le plus simple serait de le stocker comme chaine de caractère, avec un format fixe.

Ensuite, une fois que tu récupère la chaine, tu peux utiliser la fonction explode pour récupérer les minutes, secondes et centièmes puis ensuite transformer ca en nombre. Mais bon, ca me semble assez laborieux donc si quelqu'un a une autre idée...

Pour trransformer le nombre en chaine, tu peux travailler avec l'opérateur modulo.

par jobine » 26 août 2008, 19:49

Bonjour,

Merci de ta réponse.

Dans le sport, chaque centième de seconde compte :D

Donc, il n'y a pas de type direct pour entrer un temps autre qu'une heure... Domage.

Je devrais donc faire un traitement en PHP. Comment je fais pour transformer 1:34.23 en 94.23 (pas la formule mathématique, j'suis pas si nul en math...) en PHP et l'inverse aussi...

Merci

par AB » 26 août 2008, 18:30

Si tu as besoin des centièmes (vouhaouuu... vous mesurez le temps d'attente à un standard en centième de secondes, ben alors "les temps modernes" de Chaplin c'était le club med alors :lol: ) cherche peut-être du côté de microtime()

EDIT :
microtime() est peut-être pas la bonne piste mais en tous cas j'essaierais de faire, lors de la saisie du formulaire, le traitement php qui permettrait d'enregistrer directement dans un champ mysql, l'interval de temps en centièmes de secondes donc dans ce cas, dans un champs mysql de type mediumint unsigned voire int suivant l'interval de temps dont tu as besoin ... http://www.vulgarisation-informatique.c ... onnees.php

ça te permettrait d'avoir des requêtes mysql très simples à faire (donc très rapides à exécuter) pour tes comparaisons.

temps en min:sec.cs

par jobine » 26 août 2008, 17:39

Bonjour,

Je cherche à sauvegarder des temps sous le format min:sec:centième de seconde (1:23.34). Quel est le type de champ que je dois utiliser. Il faut par la suite que je puisse faire des traitement sur les valeurs comme des classements, des comparaisons (vérifier l'atteinte d'un standard par exemple).

Présentement j'ai simplifié le problème en demandant aux utilisateurs d'entrer le temps en seconde mais j'aimerais améliorer le tout.

Merci de votre aide.