Chronometrage avec php mysql

Bonjour.

Je me pose une question au sujet d'un éventuel projet de script pour faire du chronometrage via php/mysql

Je m'explique,

Je suis membre d'un motoclub et nous souhaitons mettre en place une " course ". Le déroulement de la course sera d'environ 50 participants.

L'objectif serait de faire un départ toute les 30sec d'un pilote. Donc via un formulaire j'entre le numéro du pilote au départ et à la validation du formulaire le timestamp s'enregistre dans une table sql. Au moment de l'arrivé, je valide à nouveau un formulaire qui enregistre le timestamp à nouveau dans une autre table... Ainsi de suite pour les autres participants. En fin de course je fais une requête qui va ressortir chaque participants avec les timestamp départ arrivee puis je fais la différence

D'après vous c'est jouable ??

--
Cordialement, Alban

2 réponses

  1. Modérateur
    Bonjour,

    au départ et à la validation du formulaire le timestamp s'enregistre dans une table sql. Au moment de l'arrivé, je valide à nouveau un formulaire qui enregistre le timestamp à nouveau dans une autre table

    Pourquoi dans une autre Table ? (c'est possible..mais quel en est l'interet ?)
    Le plus simple étant de mettre dans la même .....

    Une table du style : tbl_coureurs (id,num_coureur,date_depart,date_arrivee)


    En fin de course je fais une requête qui va ressortir chaque participants avec les timestamp départ arrivee puis je fais la différence

    Facile... en fonction du SGBD que tu utilises (Sql Server, Oracle, Mysql....) des fonctions existent pour cela.
    En mysql par exemple : la fonction datediff ou TIMESTAMPDIFF feront l'affaire....

    1. Je vais faire en essai, mais je peur de ne pas être suffisamment précis sur avec le timestamp et le délai d'enregistrement de la requête ... Il y aura donc un temps supplémentaire plutot aléatoire.
    2. au top !

      du coup pour le stockage du timestamp avec les centième de seconde je ne vais pas pouvoir faire le stockage dans ma table avec un (INT) ?
    3. Modérateur
      @BanBan55Ah ben non.
      Une date (un timestamp, datetime, time...) ça se stocke dans le format (dateTime ou TimeStamp).
      Ce que tu sauvegardes .. ce sont : date/heure de départ .... date/heure d'arrivée.
      Ensuite pour connaitre le temps écoulé (qu'on ne stocke pas en bdd)... une des fonctions que je t'ai donné et le tour est joué.
    4. car habituellement je stock mes timestamp dans un INT et ensuite je convertie mon timestamp en date complète dans un echo
  2. Bonjour,

    Vous entrez quel timestamp? Celui du serveur?

    Ca ne marchera pas pour chronométrer des sportifs, car l'action sur le clavier n'est pas traitée immédiatement par le serveur. Délai de 1 ms à plusieurs secondes!

    A+
    1. oui celui du serveur
      J'avais un doute justement à propos du temps d'ajout à la base de données