calcul de temps

Eléphant du PHP | 89 Messages

11 mars 2007, 14:18

Bonjour à tous
Voilà mon probléme, je dispose au boulot d'un site intranet et je souhaiterais programmer une page qui calculerait le nombre d'heures supplémetaires effectuées dans la semaine par chaque employés.
Bien que n'ayant pas de difficultés particuliéres à créer un formulaire j'avoue de grosses lacunes quant aux calculs et conditions en PHP/MYSQL!
la journée commence à 9h00 et se termine à 19h00 du lundi au vendredi.
Quelqu'un pourrait-il m'aider
Merci d'avance!!!

PS: j'ai fait une recherche et evidemment si la réponse et sous mes yeux je ne l'ai pas trouvée!

Mammouth du PHP | 991 Messages

11 mars 2007, 14:35

ou sont stocker tes données ?
DevOps, Symfony4, Hoa

Eléphant du PHP | 89 Messages

11 mars 2007, 14:41

Elles sont stockées dans une base MLYSQL*

Base Mysql, serveur Apache, PHP5: gestion WAMP5

Mammouth du PHP | 991 Messages

11 mars 2007, 14:53

Elle sont stocké comment dedans ? AAAA - MM - DD ou en timestamp
DevOps, Symfony4, Hoa

Eléphant du PHP | 89 Messages

11 mars 2007, 15:18

Le but est en fait d'imprimer un tableau qui calcule les heures faites un jour donné et d'en faire le total en fin de semaine!
ex: J"ai commencé le lundi à 9h00 et j'ai terminé à 21H00 et ce sans interruption. en fait j'ai fait quatre heures de plus à 100% ( 2 heures entre 12h00 et 14h00: heures du déjeuner et 2h00 le soir aprés 19h00)
Si j'avais travaillé jusqu'à 23H00 j'aurais fait six heures dont deux à 150% (de 21H00 à 23h00)*
La base ne stockerait que les heures de chaque semaine!
En fait cela peut être fait avec excel ou openoffice mais tous les employés ne disposent pas de ces logiciels alors que tout le monde dipose d'internet Explorer
*(J'espére avoir été clair)
Merci!

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

11 mars 2007, 15:27

Un début : http://www.phpfrance.com/forums/voir_sujet-8323.php

Pour les heures sups il faudra bidouiller un peu :)

Enfin le principe de base n'est pas compliqué :
<?php
$temps_pause = 2;
$debut_legal = 9;
$fin_legale = 18;

$heure_debut = 8;
$heure_fin = 21;

$temps_travail = $heure_fin - $heure_debut - $temps_pause;
$heures_sups = ($heure_fin - $fin_legale) + ($debut_legal - $heure_debut);

echo 'Début : '.$heure_debut.'<br />';
echo 'Fin : '.$heure_fin.'<br />';
echo 'Temps travaillé : '.$temps_travail.'<br />';
echo 'dont heures sups : '.$heures_sups.'<br />';?>

Eléphant du PHP | 89 Messages

11 mars 2007, 16:10

merci ouckileou
Mais là ou ça se complique est le coefficient de calcul des heures en fonction de l'heure de début et/ou de fin:
Il faut que je multiplie mes deux heures faites à partir de 21H00 par 150% soit deux heures qui valent en fait trois heures (2*150%=3)! d'où des conditions en fonction des tranches horaires faites (heures commencées avant 6h00 et terminées aprés 21H00).
Peut-être est il nécessaire de faire une table de toutes les heures?