Aller au contenu

Enregistrer durée de la session


jokerman

Sujets conseillés

Bonjour,

Voici mon probleme :

- j'ai un petit outil dynamique php/mysql

(saisie d'informations via un formulaire en ligne)

- cet outil est utilisé par plusieurs employés.

je souhaite enregistrés la durée de travail (saisie d'informations) pour chaque employé lorsqu'il utilise ce petit outil.

j'ai une table staff_tbl

---------------------------

id_staff

username

password

j'ai une table staff_log_tbl

---------------------------

id_log

id_staff

date_jour (date 0000-00-00)

time_log_in (time 00:00:00)

time_log_out (time 00:00:00)

- a chaque connexion d'un employé (session) je crée une entrée dans la table staff_log_tbl (id_staff,date_jour,time_log_in).

pour le champ date_jour je fais un date("Y-m-d").

pour le champ time_log_in je fais un date("H:m:i").

et j'enregistre dans la session l'id du log

login.php

/* aprés vérif username,pasword, je recup l'id du user dans la base, puis je crée le log */
$sql = "INSERT INTO $Staff_log_Tbl SET
  staff_id='".$rowUser['id']."',
  date_log='".date("Y-m-d")."',
  time_log_in='".date("H:m:i")."',
  what='in'";
                  mysql_query($sql, $link) or die(mysql_error());
  $log_id = mysql_insert_id($link);
  $_SESSION['log_id'] = $log_id;
/* redirection vers l'outil,  ./folder/index.php */

- a chaque déconnexion d'un employé (session) je met à jour la table staff_log_tbl

pour le champ time_log_out je fais un date("H:m:i").

Mon probleme, je me connecte a 14:00:00, j'ai bien dans la base :

time_log_in = 14:00:00,

je me déconnecte au bout de 10 mn, et la j'ai dans la base :

time_log_in = 14:00:03 (c'est un exemple) la deconnection se fait par le biais d'un lien qui apelle la page de deconnection, dans laquelle je met a jour la table staff_log_tbl

log_off.php

/* mise à jour du log */
$sql = "UPDATE $Staff_log_Tbl SET time_log_out='".time("H:m:i")."' WHERE id='".$_SESSION['log_id']."'";
mysql_query($sql, $link) or die(mysql_error());
/* destruction de la session etc ... */

je n'arrive pas à enregistrer l'interval réel entre la connexion et la deconnexion :(

merci de votre aide !

jokerman.

Modifié par jokerman
Lien vers le commentaire
Partager sur d’autres sites

ok g trouvé

je pense

tu executes dans le login

date("H:m:i") pour déterminer l'heure de connexion

H : Heure, au format 24h, avec les zéros initiaux

m : Mois au format numérique, avec zéros initiaux !!!!! :fou:

i : Minutes avec les zéros initiaux

http://www.php.net/manual/fr/function.date.php

et sinon tu fais un pour le logoff.php

time("H:m:i") pour déterminer l'heure de déconnexion

donc déjà je te conseille d'utiliser la fonction date() pour les 2

et d'ecrire plutot

date("H:i:s")

Lien vers le commentaire
Partager sur d’autres sites

Bonsoir,

Pourquoi n'utilisez vous pas directement timestamp pour la bd ?

ça facilite et simplifie les calculs ?

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...