younes371
Messages postés503Date d'inscriptionmercredi 29 décembre 2004StatutMembreDernière intervention20 mars 2012
-
29 août 2007 à 10:46
younes371
Messages postés503Date d'inscriptionmercredi 29 décembre 2004StatutMembreDernière intervention20 mars 2012
-
29 août 2007 à 16:56
Bonjour,
j ai un pti souci avec l afichage des resultats d une requette :
voilà ce que je ve faire :
je veux lorsque j affiche les date à la fin de chaque date j affiche la duree total, comme suit :
Date Duree(min)
25/08/07 50
40
20
Duree total 110
26/08/07 20
20
Duree total 40
voilà le code php : mon probleme est d a fiicher a la fin de chaque date la duree total,
(j ai deja afficher la duree global de tous les jours mais je l ai pas copié aussi)
// requette "req" pour la selection des données que je ve afficher
$resultat =''
// while($array = mysql_fetch_array($req))
{
$resutlat .=\"----
".$array['date_c'].", ".$array["duree"].", \";
younes371
Messages postés503Date d'inscriptionmercredi 29 décembre 2004StatutMembreDernière intervention20 mars 2012 29 août 2007 à 12:32
bon, ce que je dois faire est :
une variable temporaire contenant la date en
cours, et une variable dans laquelle tu cumules tes durées. Chaque fois
que la date en cours est différente de la date dans la variable
temporaire, c'est que je vais passer à une nouvelle date. Il te faut
donc à ce moment là afficher le cumul et le remettre à zéro (avant
d'afficher la nouvelle date) puis stocker la nouvelle date dans ta
variable tmp
mais je n arrive pas a le faire dans le code precedent !
Evangun
Messages postés1980Date d'inscriptiondimanche 20 février 2005StatutMembreDernière intervention24 septembre 20124 29 août 2007 à 13:27
Hello,
1) requête, pas requette
2) je sens que tu postes dans plusieurs forums différents... celui qui t'a répondu ne t'en dit pas plus ? ou tu es juste trop impatient d'avoir la réponse ? :) Parce que si c'est le cas, je trouve dommage (et incorrect) de faire perdre du temps à plusieurs personnes...
// while($array = mysql_fetch_array($req))
{
if(isset($temp) and $temp == $array[0]){
même variable qu'au passage de boucle précédent
}
else {
nouvelle valeur
}
cs_mike17
Messages postés19Date d'inscriptionmardi 20 mai 2003StatutMembreDernière intervention 3 mars 2009 29 août 2007 à 13:30
Salut,
Ton raisonnement est le bon. tu dois bien passer par une variable temporaire qui contient la date que tu traites.
// requette "req" pour la selection des données que je ve afficher
$resultat =''
$datetemp=''; // date temporaire
$cumuldate=0; // pour conserver le cumul par date
// while($array = mysql_fetch_array($req)) {
$cumuldate=$cumuldate+$array[\"duree\"]; // ajoute la durée
if ($datetemp!=$array['date_c']) {
$resutlat .=\"----
Durée total pour cette date, ".$cumuldate.", \"; //Affiche le total pour la date
$datetemp=$array['date_c']; //récupère la nouvelle date à traiter
$cumuldate=0;
}else {
$resutlat .=\"----
".$array['date_c'].", ".$array["duree"].", \"; //Affiche la durée
}
}
$resultat="
";
echo $resultat;
Voila je sais que c'est pas parfait, car lors de la première boucle, ca va t'afficher un total incohérent, mais c'est une base
younes371
Messages postés503Date d'inscriptionmercredi 29 décembre 2004StatutMembreDernière intervention20 mars 2012 29 août 2007 à 16:56
merci pour ta reponse
donc je peux faire :
$1ere=0;
// requette "req" pour la selection des données que je ve afficher
$resultat =''
$datetemp=''; // date temporaire
$cumuldate=0; // pour conserver le cumul par date
// while($array = mysql_fetch_array($req)) {
$cumuldate=$cumuldate+$array[\"duree\"]; // ajoute la durée
if ($datetemp!=$array['date_c'] && $1ere==1 ) {
$resutlat .=\"----
Durée total pour cette
date, ".$cumuldate.", \";
//Affiche le total pour la date
$datetemp=$array['date_c']; //récupère la nouvelle date à traiter
$cumuldate=0;
}else {