lsamsoumal
Messages postés36Date d'inscriptionlundi 24 novembre 2008StatutMembreDernière intervention27 octobre 2011
-
21 avril 2009 à 12:50
lsamsoumal
Messages postés36Date d'inscriptionlundi 24 novembre 2008StatutMembreDernière intervention27 octobre 2011
-
21 avril 2009 à 17:43
Bonjour tout le monde.
j'ai un petit problème que je me casse la tête pour le résoudre sans arrêt et ca ne marche toujour pas.
Il s'agit d'une table mysql 'presence' ayant comme colonnes 'id_user','nom','date_entree','date_sortie' et 'nb_heurs'.
je veux récupérer ses données et les afficher dans un tableau d'une page php mais je ne veux pas avoir une redondance des champs 'id_user' et 'nom'(un seul utilisateur peux entrer et sortir plusieurs fois).
est ce que quelqu'un peux m'aider???
Merci d'avance.
aieeeuuuuu
Messages postés698Date d'inscriptionjeudi 16 janvier 2003StatutMembreDernière intervention20 mai 20113 21 avril 2009 à 16:56
Bonjour,
que veux tu exactement comme sortie, car si une personne peut entrer et sortir plusieurs fois, tu ne pourra pas ressortir ca juste avec une requete
Le mieux est encore de sortir tes resultats classés par id_user (ou par nom), ensuite tu traite en php :
tant qu'il y a des enregistremets
indiquer nom_user
tant que id_user (ou nom_user) EST LE MEME :
indiquer entree/sortie
passer a l'enregistrement suivant
fin tant que
fin tant que
lsamsoumal
Messages postés36Date d'inscriptionlundi 24 novembre 2008StatutMembreDernière intervention27 octobre 2011 21 avril 2009 à 17:14
en fait ma table presence est comme suit:
id_user | nom | entree | sortie | nb_heures
01 | Martin |10h00 |12h30 | 2h30
01 | Martin |14h00 |16h30 | 2h30
02 |Jean |08h00 |10h00 | 2h00
02 |Jean |12h00 | 17h00 | 3h00
je veux avoir comme sortie:
id_user | nom | entree |sortie| nb_heures
01 | Martin |10h00 |12h30 | 2h30
| |14h00 |16h30 | 2h30
02 |Jean |08h00 |10h00 | 2h00
| |12h00 | 17h00| 3h00
je ne veux pas de redondance au niveau du id_user et du nom.
Merci pour votre interêt.
lsamsoumal
Messages postés36Date d'inscriptionlundi 24 novembre 2008StatutMembreDernière intervention27 octobre 2011 21 avril 2009 à 17:21
je suis fortement désolé
mon dernier message n'est pas du tout clair
j'ai essayé de dessiner deux tableaux l'un de ma table sql et l'autre qui décrit la structure de l'affichage souhaité mais leur affichage dans le message s'est bouleversé.je ne sais pas comment dessiner un tableau dans ce forum...
aieeeuuuuu
Messages postés698Date d'inscriptionjeudi 16 janvier 2003StatutMembreDernière intervention20 mai 20113 21 avril 2009 à 17:24
directement en SQL, cela risque d'etre bien compliqué pour pas grand chose (je ne vois d'ailleur pas de solution comme ca, a part par une procédure stockée...), puisque de toute façon il faudra le traiter derriere en php pour l'affichage...
Vous n’avez pas trouvé la réponse que vous recherchez ?
aieeeuuuuu
Messages postés698Date d'inscriptionjeudi 16 janvier 2003StatutMembreDernière intervention20 mai 20113 21 avril 2009 à 17:35
re,
j'avais compris pour le tableau...
sinon, votre requete ne me semble pas correcte... Vous faite un group by, sans utiliser de fonction d'agregat sur les autres champs.
l'idee que j'avancais dans mon précédent post, etait de recuperer toutes les info en SQL (SELECT * FROM `presence` WHERE `entree`='$today'), puis au moment de l'affichage, sauvegarder dans une variable temporaire le id_user avant de passer a l'enregistrement suivant. si l'enregistrement suivant contient le meme id_user que celui sauvegarde, ne pas afficher le nom, juste les dates entree/sortie. si le id_user est différents, le placer dans la variable temporaire, et afficher nom/entre/sortie
lsamsoumal
Messages postés36Date d'inscriptionlundi 24 novembre 2008StatutMembreDernière intervention27 octobre 2011 21 avril 2009 à 17:43
j'ai la même idée que vous avez cité mais je plante au niveau de l'affichage je n'arrive pas à réaliser l'idée en lignes de code.
En tout cas merci pour votre support.
Si vous arriviez à m'aider ça serait vraiment sympa.