Je vous en pris ayez le courage de m'aider

sittis Messages postés 24 Statut Membre -  
sittis Messages postés 24 Statut Membre -
bonjour à tous
c'est toujours le meme but
je veux developper un script qui permet de caculer les heures de travail de chaque employer , en fait le temps pendant lequel il restera connecté.
et faire fonctionner ce script dans une application qui existe déjà.
ce n'est pas un travail qui renvoie des gains mais je suis une étudiante et je débute dans php, c'est pas la première fois que je developpe en php mais c'est cette fonctionalité qui m'est si dure.
je vous remercie d'avance.

2 réponses

lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Pour un premier, nous n'avons pas besoin de "courage" pour t'aider, nous le faisons avec plaisir.
Ensuite, tu ne donne aucun renseignement sur le logiciel que tu emploi, et un peu + de détails Svp
0
sittis Messages postés 24 Statut Membre 1
 
merci , je vous explique alors en détail mon besoin.
d'abord j'utilise phpMysql avec dreamweaver MX2004 et je suis dans windows XP.
j'ai une application qui existe déjà et qui est developpé en php.
c'est une application qui gère les personnels d'un entreprise en terme decongés, d'absence...
chaque personne a sa session(il a son compte avec nom d'utilisateur et son mot de passe).
je veux donc développer un script qui permettra de compter le nombre d'heures de travail de chaque personne qui sera connectée, c'est en quelque sorte la durée pendant laquelle une personne restera connectée.

je pense que ça doit fonctionner comme suit:
une personne se connecte(entre dans sasession) et un compteur ou bien un chronometre se declanche et commence à compter et quand il se deconnecte evidemment le compteur s'arrête.
je te remercie d'avance.
0
lefoufighter Messages postés 278 Statut Membre 99
 
je dirais que c'est pas bien compliqué à 1ère vue :
Tu crée une base de donnée avec l'idEmploye, dateJour, heureDebut et heureFin,
quand un employé se connecte tu fais une requete qui enregistre son heure de connexion et quand il se déconnecte tu ajoute aussi son heureFin.
Tu devrais peut etre garder que la 1ère heureDebut et la derniere heureFin de la journée si jamais ils se connectent/déconnectent plusieurs fois par jour.
Et puis si tu veux l'heure totale de la journée tu fais juste total = heureFin-heureDebut
Si tu as besoin de plus de précision n'hésite pas mais c'est déjà un début pour commencer.
0
sittis Messages postés 24 Statut Membre 1 > lefoufighter Messages postés 278 Statut Membre
 
bonjour
je vois ce que vous me proposer, mais ça ne colle pas bien comme
vous me dite de créer une base de donnée et pourtant j'ai déjà une base que je veux m'en servir.
ou bien vous avez voulu me dire de créer une table?
sinon, est ce qu'on peut faire fonctionner deux bases de données
dans la même fonction, si oui, j'en ai pas encore vécu mais j'essayerai de voir.
je vous remercie beaucoupde votre gentillesse.
0
lefoufighter Messages postés 278 Statut Membre 99 > lefoufighter Messages postés 278 Statut Membre
 
Oui c'est ma faute, je voulais dire une table vu que vous avez déja créer la base normalement et vous devez avoir une table avec les employées aussi je suppose.
Pour utiliser 2 bases de données dans la même fonction je n'ai personnellement jamais essayé mais ca doit être faisable mais pour ce cas-ci c'est pas nécessaire.

0
sittis Messages postés 24 Statut Membre 1 > lefoufighter Messages postés 278 Statut Membre
 
oui, exactement , j'ai une table user qui est composée du login, nom, prenom, mail, motdepass..................... et d'autres caracteristiques.
qu'en dites vous donc?
je pense que là l'autre table aura ceci:
login(comme idenploye), date, heureDebut et heureFin.
je vous remercie, votre aide m'ouvre déjà l'esprit
0
sittis Messages postés 24 Statut Membre 1
 
un petit evolution mnim, ca te dit de geterun coup d'oeil?

bonjour à tous vous etes si courageux!

tu pourais etre un peu claire car moi avec le javascript ça colle pas mais je regarde descours, sur le net et surtout je meurs de la fatigue morale je regrette d'exister.
ça fait un mois de plus que je cherche et que je ne trouve pas pour ce problème.

comme vous lesavez avant de faire quoi que ce soit je doit stocket aprés qu'un utilisateur s'est connecté, son nom d'utilisateur(u_login), la date du jour(datejour), son heure de connexion(cotime), son heure de deconnexion(decotime) dans la table conges_users_log(id_log, u_login, dtaejour, cotime, decotime, elapsed(elapsed=decotime-cotime)).

j'ai fait ce code , j'arrive maintenant à me connectr , il y'a pas des erreurs, mais le code ne stocke rien dans la table conges_users_log.
ce code je l'ai inseré dansla page de session comme, suit:

-------------------------------------------------------------
voilà le code de ma page de session et ce qui est entouré par //-----------sitti //------------sitti , c'est mon code.

<?php

//
// MAIN
//

/*** initialisation des variables ***/
$session_username="";
$session_password="";
/************************************/

//
// recup du num de session (mais on ne sais pas s'il est passé en GET ou POST
$session=(isset($_GET['session']) ? $_GET['session'] : ((isset($_POST['session'])) ? $_POST['session'] : "") ) ;
/*******************sitti
******************************************/
$DEBUG=FALSE;
//$DEBUG=TRUE;

if($DEBUG==TRUE) { print_r($_SESSION); echo "<br><br>\n"; }

if ($session != "")
{
if(session_is_valid($session) == TRUE)
{
session_update($session);
//--------------------------------sitti
if($session=(isset($_GET['session']) ? $_GET['session'] : ((isset($_POST['session'])) ? $_POST['session'] : "")))
{
//connexion mysql
$db = mysql_connect('localhost', 'dbconges','motdepasse') or die('Erreur de connexion '.mysql_error());
//selection de la base
mysql_select_db('db_conges', $db) or die('Erreur deselection '.mysql_error());
//code
$cotime = time();
$u_login = "session_username";
$_SESSION['cotime']="cotime";
$_SESSION['u_login']="u_login";
$datejour = date("Y-m-d");
$sql = "INSERT INTO conges_users_log(u_login,datejour,cotime)";
//$sql .=
$sql .="VALUES('$u_login','$cotime','$datejour')";
}
//---------------------------------------- sitti

}
else
{
session_delete($session);
$session="";
$session_username="";
$session_password="";
$_SESSION['config']=init_config_tab(); // on recrée le tableau de config pour l'url du lien

echo "<center>\n";
echo "Pas de session ouverte<br>\n";
echo "Veuillez <a href='".$_SESSION['config']['URL_ACCUEIL_CONGES']."/index.php' target='_top'> vous authentifier</a>\n";
echo "</center>\n";

exit;
}
}
else // $session == ""
{
if(isset($_POST['session_username'])) { $session_username=$_POST['session_username']; }
if(isset($_POST['session_password'])) { $session_password=$_POST['session_password']; }

if ( ($_SESSION['config']['how_to_connect_user'] == "CAS") && ($session_username != "admin") )
{
$usernameCAS = authentification_passwd_conges_CAS();
if($usernameCAS != "")
{
if(session_id()!="")
session_destroy();

// on initialise la nouvelle session
session_create($usernameCAS);

}
else //dans ce cas l'utilisateur n'a pas encore été enregistré dans la base de données db_conges
{
echo "<center>\n";
echo "Il n'existe pas de compte correspondant à votre login dans la base de données de PHP_CONGES<br>\n";
echo "Contactez l'administrateur de php_conges";
echo "</center>\n";
}
}
else
{
if (($session_username == "") || ($session_password == "")) // si login et passwd non saisis
{
// SAISIE LOGIN / PASSWORD :
session_saisie_user_password("", "", ""); // appel du formulaire d'intentification (login/password)
exit;
}
else
{
// AUTHENTIFICATION :

// le user doit etre authentifié dans la table conges (login + passwd) ou dans le ldap.
// si on a trouve personne qui correspond au couple user/password

if ( ($_SESSION['config']['how_to_connect_user'] == "ldap") && ($session_username != "admin") )
{
if(session_id()!="")
session_destroy();

if (authentification_ldap_conges($session_username,$session_password) != $session_username)
{
$session="";
$session_username="";
$session_password="";

$erreur="login_passwd_incorrect";
session_saisie_user_password($erreur, $session_username, $session_password); // appel du formulaire d'intentification (login/password)
exit;
}

if ((authentification_ldap_conges($session_username,$session_password) == $session_username) && ($session_username != ""))
{
if (valid_ldap_user($session_username)==TRUE) // LDAP ok, on vérifie ici que le compte existe dans la base de données des congés.
{
// on initialise la nouvelle session
session_create($session_username);
}
else//dans ce cas l'utilisateur n'a pas encore été enregistré dans la base de données db_conges
{
$erreur="login_non_connu";
session_saisie_user_password($erreur, $session_username,$session_password); // appel du formulaire d'intentification (login/password)
exit;
}
}
} // fin du if test avec ldap
elseif ($_SESSION['config']['how_to_connect_user'] == "dbconges")
{
if(session_id()!="")
session_destroy();

if (autentification_passwd_conges($session_username,$session_password) != $session_username)
{
$session="";
$session_username="";
$session_password="";

$erreur="login_passwd_incorrect";
session_saisie_user_password($erreur, $session_username,$session_password); // appel du formulaire d'intentification (login/password)
exit;
}

if ((autentification_passwd_conges($session_username,$session_password) == $session_username) && ($session_username != ""))
{
// on initialise la nouvelle session
session_create($session_username);
}
}
}
}

}

?>

ayez vous unesur l'emplacement , car aucune erreur ne s'affiche je suppose que peut c pas là où je dois placer lecode.
merci de votre aide.
0