IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Zend_Db PHP Discussion :

Zend: Calcul du solde Congé


Sujet :

Zend_Db PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 22
    Points : 18
    Points
    18
    Par défaut Zend: Calcul du solde Congé
    Bonjour tous le monde

    Je suis entrain de développer une application de congé. Je suis au stade de calcul des congé pris. J'ai pensé que chaque fois l'application est loader elle doit calculer le solde des congés pris pour chaque utilisateurs

    J'utilise Zend Framework , j'ai créer dans mon Model une fonction de calcul de congé mais elle a l'air de ne pas fonctionner :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    public function CongesSetSolde_Encours()
    {
     
    $aujourdhui = date("d-m-Y");
     
    $req="select DISTINCT cong.num_conge,util.num_util, solde_encours, date_debut, date_fin
     
      from conge as cong, utilisateur as util where  etatconge='Valide' and cong.num_util=util.num_util
      and cong.date_debut ='".$aujourdhui."'";
     
     $res= $this->db->fetchAll($req);
     foreach($res as $resultat):
     
     $dureeSejour = (strtotime($resultat['date_debut']) - strtotime($resultat['date_fin']));
     
     $soldeencours=$resultat['solde_encours']-$dureeSejour;
     $data=array('solde_encours'=>$soldeencours);
     
    $where="num_util='".$resultat['num_util']."'";  
    $rows_affected = $this->db->update('utilisateur',$data, $where);  
       endforeach;  
    }
    Chaque congé dont la date de début = aujourd'hui le système doit calculé le solde de ce congé par la suite le déduisant de solde en cours.

    Mais lorsque j'exécute ce code ça marche pas , pouvez vous m'aider s'il y a quelque chose à rectifié dans mon code ou y a t'il un autre moyen pour calculer le solde et le mettre à jour??
    Merci d'avance

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    "ça ne marche pas" ne nous aide pas à t'aider : que fait ton code exactement ?
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  3. #3
    Membre à l'essai
    Inscrit en
    Janvier 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 22
    Points : 18
    Points
    18
    Par défaut
    Salut ,

    Je m'excuse pour le retard, je te remercie de ton poste mais je viens de trouver la solution , en fait mon code sert à vérifier si le jour actuel égale au jour demadé pour sortir en congé si le congé n'est pas annulé. Par conséquence le système vas déduire le nbr de jour demandé du solde courant. La rectification est la suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    public function CongesSetSolde_Encours()
    {
     
    $aujourdhui = date("Y-m-d");
     
    $req="select DISTINCT cong.num_conge,util.num_util, solde_encours, date_debut, date_fin
     
      from conge as cong, utilisateur as util where  etatconge='Valide' and cong.num_util=util.num_util
      and cong.date_debut ='".$aujourdhui."' and type_conge <>'Congé Récupération'";
     
     $res= $this->db->fetchAll($req);
     
     foreach($res as $resultat):
     $datedeb=$resultat['date_debut'];
     $datefin=$resultat['date_fin'];
     $dureeSejour = (strtotime($datefin)- strtotime($datedeb));
     $dureeSejour=$dureeSejour/86400;
     $soldeencours=$resultat['solde_encours']-$dureeSejour;
     $data=array('solde_encours'=>$soldeencours);
     
    $where="num_util='".$resultat['num_util']."'";  
    $rows_affected = $this->db->update('utilisateur',$data, $where);  
       endforeach;  
    }
    il faut calculer le bnr de jour demandé et le divisé par 86400 par la suite le déduire du solde en cours.
    Merci encore c'est résolu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Démission et solde congés année précédente
    Par pablo59 dans le forum Démission
    Réponses: 7
    Dernier message: 27/03/2008, 20h47
  2. Calcul du solde de tout compte après la démission.
    Par Elvina dans le forum Démission
    Réponses: 2
    Dernier message: 05/06/2007, 19h41
  3. Calcul indemnités de congés payés
    Par Yann21 dans le forum Congés
    Réponses: 3
    Dernier message: 16/01/2007, 12h44
  4. Calcul de soldes provenant de données d'un bdd access
    Par ShortcutZ dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 16/08/2006, 19h23
  5. Requete SQl, calcul du solde d'un compte
    Par nerick dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 02/02/2006, 22h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo