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

PHP & Base de données Discussion :

Création d'un systeme de repartition/ventilation des données


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Par défaut Création d'un systeme de repartition/ventilation des données
    Bonjour,
    Ces dernier temps j'ai solicité pas mal de fois les personnes de ce forums concernant mon projet (un systeme de gestion des créances clients) d'ailleur ce projet est prèsque fini. Je vous remercie de toutes l'aide que vous avez pu m'apporter.
    Bref, a ce jour il me reste un dernier petit soucis concernant la répartition des montant ou ventilation des données (Question de terminologie)

    Le tableau final (voir piège jointe)

    La problèmatique est la suivante : Il y a des clients ont des créance sur plusieurs années afin d'avoir une meilleur lisibilité ont affect chaque créance a l'année concernée.

    Dans ma Table facture j'ai un champs qui me sert a faire la distinction (champs : annee)

    Du cou je suis obligé de faire une structure conditionnelle avec l'année pour avoir le total à chaque fois.

    J'ai commencé a faire des tests en placant mes variable que j'ai initialisé à chaque fois mais voila cela ne donne aucun résultat (Sur excel pas de problème mais en php c'est différent lol)

    Voici le code de la page :


    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
     
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
    <head>
    <?php
    if (!empty($titre)) //Si le titre est indiqué, on l'affiche entre les balises <title>
    {
        echo '<title> '.$titre.' </title>';
    }
    else //Sinon, on écrit forum par défaut
    {
        echo '<title> dus region </title>';
    }
    ?>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <link rel="stylesheet" media="screen" type="text/css" title="Design" href="#" />
    </head>
     
    <body>
    <h2><center><b><u> Ventilation des montants par année d'origine</u></b></center></h2><br><br>
     
    <a href="../index.php"> Retour à l'index</a><br>
     
    <?php
     
    include('../includes/inc_conexion.php');
     
    $result = mysql_query("SELECT nom_region FROM region ORDER BY id ASC")or die(mysql_error());
     
    echo '<form action="synthese_region.php" method="post">';
    echo '<select name="frm_select_region">';
     
    while ($row = mysql_fetch_array($result))
    	{
    	//si c'est le nom de la région qui est commun aux deux tables c'est le champ nom_region que tu dois mettre en value de ton select//
    	echo '<option value="'.$row['nom_region'].'">'.$row['nom_region'].'</option>';
    	}
     
    echo '</select>';
    echo '<input type="submit" value="Go" />';
    echo '</form>';	
     
     
    $var = "";
     
    $ligne = "<table width='100%' border=1 color=black'><tr>
    			<td bgcolor='#669999'><b><u>Numero</u></b></td>
    			<td bgcolor='#669999'><b><u>Societe</u></b></td>
    			<td bgcolor='#669999'><b><u>Adhérent</u></b></td>		
    			<td bgcolor='#669999'><b><u>Montant</u></b></td>
    			<td bgcolor='#669999'><b><u>Anterieur à 2008</u></b></td>
    			<td bgcolor='#669999'><b><u>2008</u></b></td>
    			<td bgcolor='#669999'><b><u>2009</u></b></td>
    			<td bgcolor='#669999'><b><u>2010</u></b></td>
    			<td bgcolor='#669999'><b><u>- 1 mois</u></b></td>
    			<td bgcolor='#669999'><b><u>Vérif</u></b></td>
    			";
     
    $total = 0;	
     
    if(isset($_POST["frm_select_region"]) AND $_POST["frm_select_region"] != NULL)
    	{
    	$var = $_POST["frm_select_region"];
    	$rqt2 = mysql_query("SELECT * FROM societe WHERE nom_region = '$var' ORDER BY societe")or die(mysql_error());
    	}
    else
    	{
    	$rqt2 = mysql_query("SELECT * FROM societe ORDER BY societe")or die(mysql_error());
    	}
     
    	echo("Région selectionnée : $var </br></br>");
     
    if(mysql_num_rows($rqt2) > 0)
    	{
    	while($tableau2 = mysql_fetch_array($rqt2))
    		{
    		$id = $tableau2['id_numero'];
     
    		$societe = $tableau2['societe'];
    		$adherent = $tableau2['adherent'];
    		$ville = $tableau2['ville'];
    		$region = $tableau2['nom_region'];
    		$enseigne = $tableau2['enseigne'];
    		$telephone = $tableau2['telephone'];
    		$fax = $tableau2['fax'];
    		$siret = $tableau2['siret'];
     
    		$rqt = mysql_query("SELECT * FROM facture WHERE id_numero = '$id' ORDER BY `id_numero`")or die(mysql_error());
     
    		$mont = 0;
     
    		while($tableau = mysql_fetch_array($rqt))
    			{
    			$mont += addslashes($tableau['montant']);
    			}
    		$total += $mont;
     
     
     
    //**********************************************************************************************		
    //condition des repartition des montants selon l'année d'appartenance
    //**********************************************************************************************	
     
    $mont_1 = 0;  $total_1 = 0;
    $mont_2 = 0;  $total_2 = 0;
    $mont_3 = 0;  $total_3 = 0;
    $mont_4 = 0;  $total_4 = 0;
    $mont_5 = 0;  $total_5 = 0;
    $mont_6 = 0;  $total_6 = 0;
    $sannee="";	
     
     
     
    if ($annee =2008 AND $mont_2 > 0)
    {
        $mont_2 += addslashes($tableau['montant']);
    }
    elseif ($annee = 2009 AND $mont_3 > 0)
    {
        $mont_3 += addslashes($tableau['montant']);
    }
    else
    {
       $mont_1 += addslashes($tableau['montant']);
    }
     
     
     
    //********************************************************************************************		
    		if($mont > 0)
    			{
    			$ligne .= "<tr>
    						<td><a href='fiche_pdv.php?numero=$id' target='_self'>".$id."</a></td>
    						<td>".$societe."</td>
    						<td>".$adherent."</td>
    						<td align='right'>".$mont."</td>
    						<td align='right'>".$mont_1."</td>
    						<td align='right'>".$mont_2."</td>
    						<td align='right'>".$mont_3."</td>
    						<td align='right'>".$mont_4."</td>
    						<td align='right'>".$mont_5."</td>
    						<td align='right'>".$mont."</td>
    						
    						</tr>";
    			}
    		}	
     
    $ligne .= "<tr><td colspan='3' font-color='yellow'>Total Final</td><td align='right'>".$total."</td>";
    $ligne .= "<td colspan='1' align='right'>".$total_1."</td>";
    $ligne .= "<td colspan='1' align='right'>".$total_2."</td>";
    $ligne .= "<td colspan='1' align='right'>".$total_3."</td>";
    $ligne .= "<td colspan='1' align='right'>".$total_4."</td>";
    $ligne .= "<td colspan='1' align='right'>".$total_5."</td>";
    $ligne .= "<td colspan='9' align='right'>".$total."</td></tr>";
     
    $ligne .= "</table>";	
     }
    echo $ligne;
     
    mysql_close();
    ?>
    Je vous remerci de l'aide et pour le temps que vous consacré a aider les autres

    Runcafre91

  2. #2
    Membre éclairé Avatar de xess91
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    408
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 408
    Par défaut
    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
     
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
    <head>
    <?php
    if (!empty($titre)) //Si le titre est indiqué, on l'affiche entre les balises <title>
    {
        echo '<title> '.$titre.' </title>';
    }
    else //Sinon, on écrit forum par défaut
    {
        echo '<title> dus region </title>';
    }
    ?>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <link rel="stylesheet" media="screen" type="text/css" title="Design" href="#" />
    </head>
     
    <body>
    <h2><center><b><u> Ventilation des montants par année d'origine</u></b></center></h2><br><br>
     
    <a href="../index.php"> Retour à l'index</a><br>
     
    <?php
     
    include('../includes/inc_conexion.php');
     
    $result = mysql_query("SELECT nom_region FROM region ORDER BY id ASC")or die(mysql_error());
     
    echo '<form action="synthese_region.php" method="post">';
    echo '<select name="frm_select_region">';
     
    while ($row = mysql_fetch_array($result))
    	{
    	//si c'est le nom de la région qui est commun aux deux tables c'est le champ nom_region que tu dois mettre en value de ton select//
    	echo '<option value="'.$row['nom_region'].'">'.$row['nom_region'].'</option>';
    	}
     
    echo '</select>';
    echo '<input type="submit" value="Go" />';
    echo '</form>';	
     
     
    $var = "";
     
    $ligne = "<table width='100%' border=1 color=black'><tr>
    			<td bgcolor='#669999'><b><u>Numero</u></b></td>
    			<td bgcolor='#669999'><b><u>Societe</u></b></td>
    			<td bgcolor='#669999'><b><u>Adhérent</u></b></td>		
    			<td bgcolor='#669999'><b><u>Montant</u></b></td>
    			<td bgcolor='#669999'><b><u>Anterieur à 2008</u></b></td>
    			<td bgcolor='#669999'><b><u>2008</u></b></td>
    			<td bgcolor='#669999'><b><u>2009</u></b></td>
    			<td bgcolor='#669999'><b><u>2010</u></b></td>
    			<td bgcolor='#669999'><b><u>- 1 mois</u></b></td>
    			<td bgcolor='#669999'><b><u>Vérif</u></b></td>
    			";
     
    $total = 0;	
     
    if(isset($_POST["frm_select_region"]) AND $_POST["frm_select_region"] != NULL)
    	{
    	$var = $_POST["frm_select_region"];
    	$rqt2 = mysql_query("SELECT * FROM societe WHERE nom_region = '$var' ORDER BY societe")or die(mysql_error());
    	}
    else
    	{
    	$rqt2 = mysql_query("SELECT * FROM societe ORDER BY societe")or die(mysql_error());
    	}
     
    	echo("Région selectionnée : $var </br></br>");
     
    if(mysql_num_rows($rqt2) > 0)
    	{
    	while($tableau2 = mysql_fetch_array($rqt2))
    		{
    		$id = $tableau2['id_numero'];
     
    		$societe = $tableau2['societe'];
    		$adherent = $tableau2['adherent'];
    		$ville = $tableau2['ville'];
    		$region = $tableau2['nom_region'];
    		$enseigne = $tableau2['enseigne'];
    		$telephone = $tableau2['telephone'];
    		$fax = $tableau2['fax'];
    		$siret = $tableau2['siret'];
     
    		$rqt = mysql_query("SELECT * FROM facture WHERE id_numero = '$id' ORDER BY `id_numero`")or die(mysql_error());
     
    		$ant08 = "";
    		//ici l'initialisation des variables par année//
    		$a08 = "";
    		$a09 = "";
    		$a10 = "";
    		//ici initialisation des varaibles total pour chaque année//
    		$Tant08 = "";
    		$Ta08 = "";
    		$Ta09 = "";
    		$Ta10 = "";
    		//j'ai pas compris ce que tu veux avec -1mois//
     
    		$mont = 0;
     
    		while($tableau = mysql_fetch_array($rqt))
    			{
    			//calcul par année//
    			if($tableau['annee'] < 2008)
    				{
    				$ant08 += addslashes($tableau['montant']);
    				}
    			if($tableau['annee'] == 2008)
    				{
    				$a08 += addslashes($tableau['montant']);
    				}
    			if($tableau['annee'] == 2009)
    				{
    				$a09 += addslashes($tableau['montant']);
    				}
    			if($tableau['annee'] == 2010)
    				{
    				$a10 += addslashes($tableau['montant']);
    				}
    			//fin du calcul par année//
    			$mont += addslashes($tableau['montant']);
    			}
    		$total += $mont;
    		//calcul du total par année//
    		$Tant08 += $ant08;
    		$Ta08 += $a08;
    		$Ta09 += $a09;
    		$Ta10 += $a10;
     
    		if($mont > 0)
    			{
    			$ligne .= "<tr>
    						<td><a href='fiche_pdv.php?numero=$id' target='_self'>".$id."</a></td>
    						<td>".$societe."</td>
    						<td>".$adherent."</td>
    						<td align='right'>".$mont."</td>
    						<td align='right'>".$ant08."</td>
    						<td align='right'>".$a08."</td>
    						<td align='right'>".$a09."</td>
    						<td align='right'>".$a10."</td>
    						<td align='right'>".$mont_5//valeur non calculée//
    						."</td>
    						<td align='right'>".$mont."</td>
    						
    						</tr>";
    			}
    		}	
     
    $ligne .= "<tr><td colspan='3' font-color='yellow'>Total Final</td><td align='right'>".$total."</td>";
    $ligne .= "<td colspan='1' align='right'>".$Tant08."</td>";
    $ligne .= "<td colspan='1' align='right'>".$Ta08."</td>";
    $ligne .= "<td colspan='1' align='right'>".$Ta09."</td>";
    $ligne .= "<td colspan='1' align='right'>".$Ta10."</td>";
    $ligne .= "<td colspan='1' align='right'>".$total_5.//valeur non calculée//
    "</td>";
    $ligne .= "<td colspan='9' align='right'>".$total."</td></tr>";
     
    $ligne .= "</table>";	
     }
    echo $ligne;
     
    mysql_close();
    ?>

  3. #3
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Par défaut
    Bonjour et meilleurs voeux pour cette nouvelle année 2010,

    Je vous remerci pou l'aide concernant ce post, après modification de mon code, le totaux de chaque colonne ne fonctionne pas, il m'affiche a chaque fois 0, don j'ai fais un écho de toutes les valeurs mais rien.

    Voici le code concerné que j'ai commenté la parti sur les variables utilisé pour les totaux

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
     
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
    <head>
    <?php
    if (!empty($titre)) //Si le titre est indiqué, on l'affiche entre les balises <title>
    {
        echo '<title> '.$titre.' </title>';
    }
    else //Sinon, on écrit forum par défaut
    {
        echo '<title> dus region </title>';
    }
    ?>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <link rel="stylesheet" media="screen" type="text/css" title="Design" href="#" />
    </head>
     
    <body>
    <h2><center><b><u> Ventilation des montants par année d'origine</u></b></center></h2><br><br>
     
    <a href="../index.php"> Retour à l'index</a><br>
     
    <?php
     
    include('../includes/inc_conexion.php');
     
    $result = mysql_query("SELECT nom_region FROM region ORDER BY id ASC")or die(mysql_error());
     
    echo '<form action="synthese_region.php" method="post">';
    echo '<select name="frm_select_region">';
     
    while ($row = mysql_fetch_array($result))
    	{
    	//si c'est le nom de la région qui est commun aux deux tables c'est le champ nom_region que tu dois mettre en value de ton select//
    	echo '<option value="'.$row['nom_region'].'">'.$row['nom_region'].'</option>';
    	}
     
    echo '</select>';
    echo '<input type="submit" value="Go" />';
    echo '</form>';	
     
     
    $var = "";
     
    $ligne = "<table border='1' font-size=1em>
    			<td bgcolor='#669999'><b><u>Numero</u></b></td>
    			<td bgcolor='#669999'><b><u>Societe</u></b></td>
    			<td bgcolor='#669999'><b><u>Adhérent</u></b></td>		
    			<td bgcolor='#669999'><b><u>Montant</u></b></td>
    			<td bgcolor='#669999'><b><u>Anterieur à 2008</u></b></td>
    			<td bgcolor='#669999'><b><u>2008</u></b></td>
    			<td bgcolor='#669999'><b><u>2009</u></b></td>
    			<td bgcolor='#669999'><b><u>2010</u></b></td>
    			<td bgcolor='#669999'><b><u>-1 mois</u></b></td>
    			<td bgcolor='#669999'><b><u>Vérif</u></b></td>";
     
    $total = 0;	
     
    if(isset($_POST["frm_select_region"]) AND $_POST["frm_select_region"] != NULL)
    	{
    	$var = $_POST["frm_select_region"];
    	$rqt2 = mysql_query("SELECT * FROM societe WHERE nom_region = '$var' ORDER BY societe")or die(mysql_error());
    	}
    else
    	{
    	$rqt2 = mysql_query("SELECT * FROM societe ORDER BY societe")or die(mysql_error());
    	}
     
    	echo("Région selectionnée : $var </br></br>");
     
    if(mysql_num_rows($rqt2) > 0)
    	{
    	while($tableau2 = mysql_fetch_array($rqt2))
    		{
    		$id = $tableau2['id_numero'];
     
    		$societe = $tableau2['societe'];
    		$adherent = $tableau2['adherent'];
    		$ville = $tableau2['ville'];
    		$region = $tableau2['nom_region'];
    		$enseigne = $tableau2['enseigne'];
    		$telephone = $tableau2['telephone'];
    		$fax = $tableau2['fax'];
    		$siret = $tableau2['siret'];
     
    		$rqt = mysql_query("SELECT * FROM facture WHERE id_numero = '$id' ORDER BY `id_numero`")or die(mysql_error());
     
    		$ant08 = ""; //ici l'initialisation des variables par année//
    		$a08 = "";
    		$a09 = "";
    		$a10 = "";
    		$a_1 = "";
     
    		//ici initialisation des variables total pour chaque année//
    		$Tant08 = "";
    		$Ta08 = "";
    		$Ta09 = "";
    		$Ta10 = "";
    		$Ta_1 = "";
    		$Tmont_2 = ""; // sert a la totalisation des lignes
    		$Tmont_3 =""; // sert à la totalisation de la colonne des totaux
    		//c'est pour les facture datant d'un - d'un mois ($Ta_1)//
     
    		$mont = 0;
     
    		while($tableau = mysql_fetch_array($rqt))
    			{
    			//calcul par année//
    			if($tableau['annee'] < 2008)
    				{
    				$ant08 += addslashes($tableau['montant']);
    				}
    			if($tableau['annee'] == 2008)
    				{
    				$a08 += addslashes($tableau['montant']);
    				}
    			if($tableau['annee'] == 2009)
    				{
    				$a09 += addslashes($tableau['montant']);
    				}
    			if($tableau['annee'] == 2010)
    				{
    				$a10 += addslashes($tableau['montant']);
    				}
    			if($tableau['annee'] == 20101)
    				{
    				$a_1 += addslashes($tableau['montant']);
    				}
    			//fin du calcul par année//
     
     
    			$mont += addslashes($tableau['montant']);
    			}
    		$total += $mont; //calcul du total par année//
    		$Tant08 += $ant08;
    		$Ta08 += $a08;
    		$Ta09 += $a09;
    		$Ta10 += $a10;
    		$Ta_1 += $a_1;
    		$Tmont_2 += $ant08 + $a08 + $a09 + $a10 + $a_1; // totalisation de la ligne //
    		$Tmont_3 += $Tmont_2; // Totalisation de la colonne //
     
    		if($mont > 0)
    			{
    			$ligne .= "<tr>
    						<td><a href='fiche_pdv.php?numero=$id' target='_self'>".$id."</a></td>
    						<td>".$societe."</td>
    						<td>".$adherent."</td>
    						<td align='right'>".$mont."</td>
    						<td align='right'>".$ant08."</td>
    						<td align='right'>".$a08."</td>
    						<td align='right'>".$a09."</td>
    						<td align='right'>".$a10."</td>
    						<td align='right'>".$a_1."</td>
    						<td align='right'>".$Tmont_2."</td></tr>"; // total de la ligne //
    			}
    		}	
     
    $ligne .= "<tr><td colspan='3'>Total Final</td><td align='right'>".$total."</td>";
    $ligne .= "<td colspan='1' align='right'>".$Tant08."</td>";
    $ligne .= "<td colspan='1' align='right'>".$Ta08."</td>";
    $ligne .= "<td colspan='1' align='right'>".$Ta09."</td>";
    $ligne .= "<td colspan='1' align='right'>".$Ta10."</td>";
    $ligne .= "<td colspan='1' align='right'>".$Ta_1."</td>"; // concerne les factures de moins d'un mois //
    $ligne .= "<td colspan='9' align='right'>".$Tmont_3."</td></tr>"; // total des differents totaux //
     
    $ligne .= "</table>";	
     }
    echo ("$ligne </br>");
    echo ("Echo de la variable Tant08 : $Tant08, je dois avoir la somme de la colonne : Anterieur à 2008</br>"); 
    echo ("Echo de la variable Ta08 : $Ta08, je dois avoir la somme de la colonne : 2008 </br>");
    echo ("Echo de la variable Ta09 : $Ta09, je dois avoir la somme de la colonne : 2009  soit dans ce cas : 200.32</br>");
    echo ("Echo de la variable Ta10 : $Ta10, je dois avoir la somme de la colonne : 2010 </br>");
    echo ("Echo de la variable Ta_1 : $Ta_1 , je dois avoir la somme de la colonne : -1 mois soit das ce cas 956.80</br>");
    echo ("Echo de la variable Tmont_3 : $Tmont_3, total de la colonne Vérif </br>");
     
     
     
    mysql_close();
    ?>

    Ci-joint une capture écran avec un exemple et les Echo des variable concerné




    Je vous remerci de votre aide


    Runcafre91

  4. #4
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Par défaut
    Citation Envoyé par runcafre91 Voir le message
    Bonjour et meilleurs voeux pour cette nouvelle année 2010,

    Je vous remerci pou l'aide concernant ce post, après modification de mon code, le totaux de chaque colonne ne fonctionne pas, il m'affiche a chaque fois 0, don j'ai fais un écho de toutes les valeurs mais rien.

    Voici le code concerné que j'ai commenté la parti sur les variables utilisé pour les totaux

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
     
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
    <head>
    <?php
    if (!empty($titre)) //Si le titre est indiqué, on l'affiche entre les balises <title>
    {
        echo '<title> '.$titre.' </title>';
    }
    else //Sinon, on écrit forum par défaut
    {
        echo '<title> dus region </title>';
    }
    ?>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <link rel="stylesheet" media="screen" type="text/css" title="Design" href="#" />
    </head>
     
    <body>
    <h2><center><b><u> Ventilation des montants par année d'origine</u></b></center></h2><br><br>
     
    <a href="../index.php"> Retour à l'index</a><br>
     
    <?php
     
    include('../includes/inc_conexion.php');
     
    $result = mysql_query("SELECT nom_region FROM region ORDER BY id ASC")or die(mysql_error());
     
    echo '<form action="synthese_region.php" method="post">';
    echo '<select name="frm_select_region">';
     
    while ($row = mysql_fetch_array($result))
    	{
    	//si c'est le nom de la région qui est commun aux deux tables c'est le champ nom_region que tu dois mettre en value de ton select//
    	echo '<option value="'.$row['nom_region'].'">'.$row['nom_region'].'</option>';
    	}
     
    echo '</select>';
    echo '<input type="submit" value="Go" />';
    echo '</form>';	
     
     
    $var = "";
     
    $ligne = "<table border='1' font-size=1em>
    			<td bgcolor='#669999'><b><u>Numero</u></b></td>
    			<td bgcolor='#669999'><b><u>Societe</u></b></td>
    			<td bgcolor='#669999'><b><u>Adhérent</u></b></td>		
    			<td bgcolor='#669999'><b><u>Montant</u></b></td>
    			<td bgcolor='#669999'><b><u>Anterieur à 2008</u></b></td>
    			<td bgcolor='#669999'><b><u>2008</u></b></td>
    			<td bgcolor='#669999'><b><u>2009</u></b></td>
    			<td bgcolor='#669999'><b><u>2010</u></b></td>
    			<td bgcolor='#669999'><b><u>-1 mois</u></b></td>
    			<td bgcolor='#669999'><b><u>Vérif</u></b></td>";
     
    $total = 0;	
     
    if(isset($_POST["frm_select_region"]) AND $_POST["frm_select_region"] != NULL)
    	{
    	$var = $_POST["frm_select_region"];
    	$rqt2 = mysql_query("SELECT * FROM societe WHERE nom_region = '$var' ORDER BY societe")or die(mysql_error());
    	}
    else
    	{
    	$rqt2 = mysql_query("SELECT * FROM societe ORDER BY societe")or die(mysql_error());
    	}
     
    	echo("Région selectionnée : $var </br></br>");
     
    if(mysql_num_rows($rqt2) > 0)
    	{
    	while($tableau2 = mysql_fetch_array($rqt2))
    		{
    		$id = $tableau2['id_numero'];
     
    		$societe = $tableau2['societe'];
    		$adherent = $tableau2['adherent'];
    		$ville = $tableau2['ville'];
    		$region = $tableau2['nom_region'];
    		$enseigne = $tableau2['enseigne'];
    		$telephone = $tableau2['telephone'];
    		$fax = $tableau2['fax'];
    		$siret = $tableau2['siret'];
     
    		$rqt = mysql_query("SELECT * FROM facture WHERE id_numero = '$id' ORDER BY `id_numero`")or die(mysql_error());
     
    		$ant08 = ""; //ici l'initialisation des variables par année//
    		$a08 = "";
    		$a09 = "";
    		$a10 = "";
    		$a_1 = "";
     
    		//ici initialisation des variables total pour chaque année//
    		$Tant08 = "";
    		$Ta08 = "";
    		$Ta09 = "";
    		$Ta10 = "";
    		$Ta_1 = "";
    		$Tmont_2 = ""; // sert a la totalisation des lignes
    		$Tmont_3 =""; // sert à la totalisation de la colonne des totaux
    		//c'est pour les facture datant d'un - d'un mois ($Ta_1)//
     
    		$mont = 0;
     
    		while($tableau = mysql_fetch_array($rqt))
    			{
    			//calcul par année//
    			if($tableau['annee'] < 2008)
    				{
    				$ant08 += addslashes($tableau['montant']);
    				}
    			if($tableau['annee'] == 2008)
    				{
    				$a08 += addslashes($tableau['montant']);
    				}
    			if($tableau['annee'] == 2009)
    				{
    				$a09 += addslashes($tableau['montant']);
    				}
    			if($tableau['annee'] == 2010)
    				{
    				$a10 += addslashes($tableau['montant']);
    				}
    			if($tableau['annee'] == 20101)
    				{
    				$a_1 += addslashes($tableau['montant']);
    				}
    			//fin du calcul par année//
     
     
    			$mont += addslashes($tableau['montant']);
    			}
    		$total += $mont; //calcul du total par année//
    		$Tant08 += $ant08;
    		$Ta08 += $a08;
    		$Ta09 += $a09;
    		$Ta10 += $a10;
    		$Ta_1 += $a_1;
    		$Tmont_2 += $ant08 + $a08 + $a09 + $a10 + $a_1; // totalisation de la ligne //
    		$Tmont_3 += $Tmont_2; // Totalisation de la colonne //
     
    		if($mont > 0)
    			{
    			$ligne .= "<tr>
    						<td><a href='fiche_pdv.php?numero=$id' target='_self'>".$id."</a></td>
    						<td>".$societe."</td>
    						<td>".$adherent."</td>
    						<td align='right'>".$mont."</td>
    						<td align='right'>".$ant08."</td>
    						<td align='right'>".$a08."</td>
    						<td align='right'>".$a09."</td>
    						<td align='right'>".$a10."</td>
    						<td align='right'>".$a_1."</td>
    						<td align='right'>".$Tmont_2."</td></tr>"; // total de la ligne //
    			}
    		}	
     
    $ligne .= "<tr><td colspan='3'>Total Final</td><td align='right'>".$total."</td>";
    $ligne .= "<td colspan='1' align='right'>".$Tant08."</td>";
    $ligne .= "<td colspan='1' align='right'>".$Ta08."</td>";
    $ligne .= "<td colspan='1' align='right'>".$Ta09."</td>";
    $ligne .= "<td colspan='1' align='right'>".$Ta10."</td>";
    $ligne .= "<td colspan='1' align='right'>".$Ta_1."</td>"; // concerne les factures de moins d'un mois //
    $ligne .= "<td colspan='9' align='right'>".$Tmont_3."</td></tr>"; // total des differents totaux //
     
    $ligne .= "</table>";	
     }
    echo ("$ligne </br>");
    echo ("Echo de la variable Tant08 : $Tant08, je dois avoir la somme de la colonne : Anterieur à 2008</br>"); 
    echo ("Echo de la variable Ta08 : $Ta08, je dois avoir la somme de la colonne : 2008 </br>");
    echo ("Echo de la variable Ta09 : $Ta09, je dois avoir la somme de la colonne : 2009  soit dans ce cas : 200.32</br>");
    echo ("Echo de la variable Ta10 : $Ta10, je dois avoir la somme de la colonne : 2010 </br>");
    echo ("Echo de la variable Ta_1 : $Ta_1 , je dois avoir la somme de la colonne : -1 mois soit das ce cas 956.80</br>");
    echo ("Echo de la variable Tmont_3 : $Tmont_3, total de la colonne Vérif </br>");
     
     
     
    mysql_close();
    ?>

    Ci-joint une capture écran avec un exemple et les Echo des variable concerné




    Je vous remerci de votre aide


    Runcafre91


    Bonsoir,

    Cela fait plus d'une semaine que je me casse la tete afinde savoir poourquoi ce code ne fait pas ce que je veux

    je remercie d'avance les personnes qui pourront m'aider a elucider ce problème

    Runcafre91

  5. #5
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2009
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2009
    Messages : 44
    Par défaut
    salut

    pour ma part je pense que cela est simplement un problème sql.
    dans le premier code que tu fourni il y a cela
    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
    //**********************************************************************************************		
    //condition des repartition des montants selon l'année d'appartenance
    //**********************************************************************************************	
     
    $mont_1 = 0;  $total_1 = 0;
    $mont_2 = 0;  $total_2 = 0;
    $mont_3 = 0;  $total_3 = 0;
    $mont_4 = 0;  $total_4 = 0;
    $mont_5 = 0;  $total_5 = 0;
    $mont_6 = 0;  $total_6 = 0;
    $sannee="";    <-- cette declaration	
     
     
     
    if ($annee =2008 AND $mont_2 > 0)
    {...

  6. #6
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Par défaut
    Citation Envoyé par backdown Voir le message
    salut

    pour ma part je pense que cela est simplement un problème sql.
    dans le premier code que tu fourni il y a cela
    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
    //**********************************************************************************************		
    //condition des repartition des montants selon l'année d'appartenance
    //**********************************************************************************************	
     
    $mont_1 = 0;  $total_1 = 0;
    $mont_2 = 0;  $total_2 = 0;
    $mont_3 = 0;  $total_3 = 0;
    $mont_4 = 0;  $total_4 = 0;
    $mont_5 = 0;  $total_5 = 0;
    $mont_6 = 0;  $total_6 = 0;
    $sannee="";    <-- cette declaration	
     
     
     
    if ($annee =2008 AND $mont_2 > 0)
    {...
    Bonsoir,
    merci pour votre réponse mais le bout de code que vous avez repris a été remplacer pas d'autre variable au fil de la conversation, j'ai toujour le même problème de totalisation par année.

    Merci de votre aide

    Runcafre91

Discussions similaires

  1. [XL-2003] Ventiler des données par détection de Sauts de page
    Par Abyssale dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 11/06/2010, 15h45
  2. Réponses: 13
    Dernier message: 25/10/2009, 23h11
  3. Réponses: 3
    Dernier message: 19/05/2008, 10h36
  4. Réponses: 3
    Dernier message: 28/05/2007, 13h11
  5. Réponses: 22
    Dernier message: 07/12/2005, 13h51

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