Un petit probléme MySQL

Résolu
sensoide Messages postés 102 Date d'inscription mardi 17 janvier 2006 Statut Membre Dernière intervention 1 août 2007 - 21 mars 2006 à 10:08
sensoide Messages postés 102 Date d'inscription mardi 17 janvier 2006 Statut Membre Dernière intervention 1 août 2007 - 21 mars 2006 à 13:39
G deux table

ma table congé : et ma table jours travaillés:

DATE_DEBUT_CONGE, , , , , , , , , , , , , , CODE_USER, ----
DATE_FIN_CONGE, , , , , , , , , , , , , , NOM_ENT, ----
Conge_SS, , , , , , , , , , , , , , MOIS, ----
Conge_P, , , , , , , , , , , , , , nombre_jt, ----
CODE_CONGE, , , , , , , , , , , , , , , ----
CODE_USER, , , , , , , , , , , , , , , ----
NOMBRE_JOURSC, , , , , , , , , , , , , , , ----
JOURS_ACQUIS_CONGE, , , , , , , , , , , , , , , ----
JOURS_EN_ACQUIS_CONGE, , , , , , , , , , , , , , , ----
mois_pour_tri, , , , , , , , , , , , , , , ----

je dois affiche code_user, nombre_joursc
pour la table congé et
le champs nombre_jt pour la table Travaillé
sachant que touts dois s'affiché dynamiquement
dans un tableau?
De l'aide s'il vous plaie,
|
,
,
,
,
,
,
,
,
,
,
,
,
<table _base_href="http://localhost/phpmyadmin/" class="data" id="tablestructure">
----
|,
</td>
,
,
,
,
,
SSDS</gras>

10 réponses

sensoide Messages postés 102 Date d'inscription mardi 17 janvier 2006 Statut Membre Dernière intervention 1 août 2007
21 mars 2006 à 13:39
C'est bon les gars j'ai trouvé tout seul comme un grand si ça intérésse quelqu'un j'ai fais comme ça :
_______________________________________________________________
CODE
______________________________________________________________

$sqllisteur="SELECT code_user, code_conge, nombre_joursc, mois_pour_tri FROM t_conge_travaille WHERE mois_pour_tri='mars 2006'";
$listeur = mysql_query ($sqllisteur,$sfxConn);
$nbrelisteur = mysql_num_rows($listeur);

echo "Code collaborateur,
Mois,
Nombre de jours de congés,
Nombre de jours travaillés,
\";

for ($j = 1; $j <= $nbrelisteur ; $j++)
{
$lignelisteur = mysql_fetch_row ($listeur);
$code_collabo=$lignelisteur[0];
$code_conge=$lignelisteur[1];
$no=$lignelisteur[2];
$mois_tri=$lignelisteur[3];

$joursTravailles=joursC($code_collabo, $mois_tri);//Fonction qui repértorie les jours travaillés dans le mois

echo\"
----

".$code_collabo.",
".$moisO.' '.$anneeO.",
".$no.' '.$code_conge.", \";

if( $joursTravailles != null )
{
echo \"".$joursTravailles.", \";
}
else
{
echo \"Null".$joursTravailles.", \";
}
}
echo \"

";

function joursC($collabo, $mois)
{
$sqllist="SELECT nombre_jt FROM t_user_saisie_jt WHERE mois='$mois' and code_user='$collabo'";
$list = mysql_query ($sqllist,$sfxConn);
//$nbrelist = mysql_num_rows ($list);
$ligneliste = mysql_fetch_row ($list);
$total_jt=$ligneliste[0];
return $total_jt;
mysql_close($sfxConn);
}
________________________________________________________________
JE ME SUIS JUSTE SERVIS D'UNE FONCTION ET VOILA LE TRAVAILLE :
_______________________________________________________________

Code collaborateur,
Mois,
Nombre de jours de
congés,
Nombre de jours
travaillés,
----

123456,
March 2006,
1 R.T.T,
20,
----

12345679,
March 2006,
3 FORMA,
99,
----

1234567,
March 2006,
2 CON,
23
PERFECT

Merci les gars.

SSDS
3
sidf Messages postés 1216 Date d'inscription mardi 20 décembre 2005 Statut Membre Dernière intervention 18 octobre 2012 5
21 mars 2006 à 10:23
je suppose que tu as une variable $user postée ?
(soit tu fais deux requêtes soit une jointure)
$requete1"select NOMBRE_JOURSC from <gras>conge where CODE_USER</gras>'$user' ";
$res1= mysql_query($requete1);
$nbjourssc=mysql_result($res1,0,0); // 1 enreg, 1 champ

$requete2="select nombre_jt from travaille where CODE_USER ='$user' ";
$res2=mysql_query($requete2);
$nbjoursjt=mysql_result($res2,0,0); // 1 enreg, 1 champ
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
21 mars 2006 à 10:33
Hello,
SELECT conge.nombre_jsc, conge.code_user, travaille.nombre_jt FROM conge, travaille WHERE conge.code_user travaille.code_user AND code_user $code_user

plutôt.
0
sensoide Messages postés 102 Date d'inscription mardi 17 janvier 2006 Statut Membre Dernière intervention 1 août 2007
21 mars 2006 à 10:46
SELECT conge.nombre_jsc, conge.code_user, travaille.nombre_jt FROM
conge, travaille WHERE conge.code_user = travaille.code_user AND
code_user = $code_user

J'ai déja utiliser cette solution et ça me fais des "doublon a l'affichage".
C pour ça que je tourne un peux en rond.
Et le code user en fait est une variable qui est stoké dans la table.

SSDS
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
21 mars 2006 à 10:48
Cette requête ne peut pas te donner de doublons.
SELECT conge.nombre_jsc, conge.code_user, travaille.nombre_jt FROM conge, travaille WHERE conge.code_user = travaille.code_user

te sortira toutes les entrées sans doublon, pour chaque code_user présent dans les 2 tables.
0
sidf Messages postés 1216 Date d'inscription mardi 20 décembre 2005 Statut Membre Dernière intervention 18 octobre 2012 5
21 mars 2006 à 10:49
perso je ne comprends pas
0
sensoide Messages postés 102 Date d'inscription mardi 17 janvier 2006 Statut Membre Dernière intervention 1 août 2007
21 mars 2006 à 10:56
Nous devont affiché que les enregistrement du mois en cours.

SSDS
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
21 mars 2006 à 10:59
ben tu rajoutes une clause dans le WHERE, pour ne sélectionner que le mois en cours...
0
sensoide Messages postés 102 Date d'inscription mardi 17 janvier 2006 Statut Membre Dernière intervention 1 août 2007
21 mars 2006 à 11:23
voici ma requette
SELECT t_conge_travaille.code_user, t_conge_travaille.date_debut_conge, t_conge_travaille.code_conge, t_conge_travaille.nombre_joursc, t_user_saisie_jt.nombre_jt FROM t_conge_travaille,t_user_saisie_jt WHERE (t_conge_travaille.code_user = t_user_saisie_jt.code_user) AND (t_conge_travaille.mois_pour_tri && t_user_saisie_jt.mois)='mars 2006';

Voici l'affichage:

Code collaborateur,
Mois,
Nombre de jours COngé,
Nombre de jours
travaillés,
----

123456,
March 2006,
R.T.T 1,
56,
----

123456,
March 2006,
IC 1,
56,
----

123456,
March 2006,
PRR 1,
56,
----

123456,
March 2006,
R.T.T 1,
20,
----

123456,
March 2006,
IC 1,
20,
----

123456,
March 2006,
PRR 1,
20,
----

123456,
March 2006,
R.T.T 1,
21,
----

123456,
March 2006,
IC 1,
21,
----

123456,
March 2006,
PRR 1,
21,
----

123456,
March 2006,
R.T.T 1,
99,
----

123456,
March 2006,
IC 1,
99,
----

123456,
March 2006,
PRR 1,
99,
----

1234567,
March 2006,
FORMA 3,
23,
----

1234567,
March 2006,
CON 2,
23















et voici le code maintenant:

<?php

$leTemps=getdate();
$moisO=$leTemps['month'];
$anneeO=$leTemps['year'];
$fini=$moisO.' '.$anneeO;

$sqllist="SELECT distinct t_conge_travaille.code_user, t_conge_travaille.code_conge, t_conge_travaille.nombre_joursc, t_user_saisie_jt.nombre_jt FROM t_conge_travaille,t_user_saisie_jt WHERE ((t_conge_travaille.code_user = t_user_saisie_jt.code_user) or (t_conge_travaille.code_user != null)or (t_user_saisie_jt.code_user != null)) and (t_conge_travaille.mois_pour_tri && t_user_saisie_jt.mois)='mars 2006'";
//SELECT code_user,nombre_jt FROM t_user_saisie_jt WHERE mois='mars 2006'";
//SELECT distinct t_conge_travaille.code_user, t_conge_travaille.date_debut_conge, t_conge_travaille.code_conge, t_conge_travaille.nombre_joursc, t_user_saisie_jt.nombre_jt FROM t_conge_travaille,t_user_saisie_jt WHERE ((t_conge_travaille.code_user = t_user_saisie_jt.code_user) or (t_conge_travaille.code_user != null)or (t_user_saisie_jt.code_user != null)) and (t_conge_travaille.mois_pour_tri && t_user_saisie_jt.mois)='mars 2006';

$list = mysql_query ($sqllist,$sfxConn);
$nbrelist = mysql_num_rows ($list);

echo "Code collaborateur,
Mois,
Nombre de jours COngé,
Nombre de jours travaillés,
\";

for ($j = 1; $j <= $nbrelist ; $j++)
{
$lignelist = mysql_fetch_row ($list);
$code_collabo=$lignelist[0];
$nb=$lignelist[1];
$total=$lignelist[2];
$totalC=$lignelist[3];
echo\"
----

".$code_collabo.",
".$moisO.' '.$anneeO.",
".$nb.' '.$total.",
".$totalC.",
\";

}
echo \"

";

?>

SSDS
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
21 mars 2006 à 13:11
si tu réexpliquais le problème posément....?
0
Rejoignez-nous