Probleme calcul et mise à jour d'une variable

aureliemerlin Messages postés 82 Date d'inscription jeudi 24 juin 2010 Statut Membre Dernière intervention 17 avril 2013 - 4 nov. 2011 à 10:34
inwebo Messages postés 380 Date d'inscription lundi 12 novembre 2007 Statut Membre Dernière intervention 23 octobre 2014 - 4 nov. 2011 à 10:48
Bonjour à tous,


J'ai une table qui s'appelle BDcommission dans laquelle apparait un somme banque, une somme client et un somme apporteur

J'ai un formulaire dans lequel je fais apparaitre toutes les informations de ma table.

Je voudrais lorsque je clique sur le bouton calculer d'une ligne le calcul suivant soit effectué : (somme banque + somme client) - somme apporteur et que le résultat soit enregistré dans le champ total.

voici le code utilisé :
<html>
<head>
<style type="text/css">
<!--
table{
border-bottom-width: thin;
border-left-width: thin;
border-bottom-style: solid;
border-left-style: solid;
border-bottom-color: #000000;
border-left-color: #000000;
width: 100%;
font-size:12px;
border-top-width: thin;
border-right-width: thin;
border-top-style: solid;
border-right-style: solid;
border-top-color: #000000;
border-right-color: #000000;
}

td{
padding-right: 2px;
padding-left: 4px;
border: thin solid #000000;
}
.headline {
height:38px;}

.ccial {
width: 80px;
}

.typecli {
width: 80px;
}
-->
</style>
<title>Tableau de calcul des commissions</title>
<head>

<?php
/*?>require_once('../gescompt/includes/templategc.php');
<?php */require_once('../gescompt/includes/magicquotes.inc.php');
require_once('../gescompt/includes/auxiliaires.inc.php');
require_once('../gescompt/includes/bd.inc.php');
if (isset($_POST['action']) and $_POST['action'] == 'VALIDER')
{
}
else
{
$CodeCom = mysqli_real_escape_string($lien, $_GET['CodeCom']);
if (isset($_GET['Commercial']))
{
$Commercial = mysqli_real_escape_string($lien, $_GET['Commercial']);
}
$result mysqli_query($lien,"select NumSiege from bdcommercial WHERE CodeCom'$Commercial'");
$ligne = mysqli_fetch_array($result);
if ($ligne[0] > 0)
{
$NumSiege = $ligne[0];
} }

if (isset($_POST['action']) and $_POST['action'] == 'VALIDER')
{
$CodeCom=htmlspecialchars($_POST['CodeCom']);
$resultat = mysqli_query($lien, "select NumInterne, CodeCom, NumFacBanque1, EvolutionFacBanque1, NomBanque, MontantFactureBanque, NumFacClient1, EvolutionFacClient1, NomClient, MontantFactureClient, MontantApporteur, Total, TauxCom, MontantCommission, Cloture, NumFacBanque2, NumFacBanque3, EvolutionBanque2, EvolutionBanque3, EvolutionClient2, EvolutionClient3, NumFacClient2, NumFacClient3, NomApporteur1, NomApporteur2, NumSiege, NbFactureBanque, MontantFacBanque1, MontantFacBanque2, MontantFacBanque3, Num, NbFactureClient, MontantFacClient1, MontantFacClient2, MontantFacClient3, NomApporteur1, NomApporteur2, NumRegApporteur1, NumRegApporteur2, MontantRegApporteur1, MontantRegApporteur2, MontantApporteur, NumSiege from bdcommission WHERE CodeCom='$CodeCom'");
}
else
{
$resultat = mysqli_query($lien, "select NumInterne, CodeCom, NumFacBanque1, EvolutionFacBanque1, NomBanque, MontantFactureBanque, NumFacClient1, EvolutionFacClient1, NomClient, MontantFactureClient, MontantApporteur, Total, TauxCom, MontantCommission, Cloture, NumFacBanque2, NumFacBanque3, EvolutionBanque2, EvolutionBanque3, EvolutionClient2, EvolutionClient3, NumFacClient2, NumFacClient3, NomApporteur1, NomApporteur2, NumSiege, NbFactureBanque, MontantFacBanque1, MontantFacBanque2, MontantFacBanque3, Num, NbFactureClient, MontantFacClient1, MontantFacClient2, MontantFacClient3, NomApporteur1, NomApporteur2, NumRegApporteur1, NumRegApporteur2, MontantRegApporteur1, MontantRegApporteur2, MontantApporteur, NumSiege from bdcommission ");

}
if (!$resultat)
{
$erreur = 'erreur de la lecture : '.mysqli_error($lien);
include 'erreur.html.php';
exit();
}
$bdcommission = array();
while ($ligne = mysqli_fetch_array($resultat))
{
$bdcommission[]= array('NumInterne' => $ligne ['NumInterne'], 'CodeCom' => $ligne['CodeCom'], 'NumFacBanque1' => $ligne['NumFacBanque1'], 'EvolutionFacBanque1' => $ligne['EvolutionFacBanque1'], 'NomBanque' => $ligne['NomBanque'], 'MontantFactureBanque' => $ligne['MontantFactureBanque'], 'NumFacClient1' => $ligne['NumFacClient1'], 'EvolutionFacClient1' => $ligne['EvolutionFacClient1'], 'NomClient' => $ligne['NomClient'], 'MontantFactureClient' => $ligne['MontantFactureClient'], 'MontantApporteur' => $ligne['MontantApporteur'], 'Total' => $ligne['Total'], 'TauxCom' => $ligne['TauxCom'], 'MontantCommission' => $ligne['MontantCommission'], 'Cloture' => $ligne['Cloture'], 'NumFacBanque2' => $ligne['NumFacBanque2'], 'NumFacBanque3' => $ligne['NumFacBanque3'], 'NbFactureBanque' => $ligne['NbFactureBanque'], 'MontantFacBanque1' => $ligne['MontantFacBanque1'], 'MontantFacBanque2' => $ligne['MontantFacBanque2'], 'MontantFacBanque3' => $ligne['MontantFacBanque3'],'Num' => $ligne['Num'], 'NbFactureClient' => $ligne['NbFactureClient'], 'MontantFacClient1' => $ligne['MontantFacClient1'], 'MontantFacClient2' => $ligne['MontantFacClient2'], 'MontantFacClient3' => $ligne['MontantFacClient3'], 'EvolutionBanque2' => $ligne['EvolutionBanque2'], 'EvolutionBanque3' => $ligne['EvolutionBanque3'], 'EvolutionFacClient1' => $ligne['EvolutionFacClient1'], 'EvolutionClient2' => $ligne['EvolutionClient2'], 'EvolutionClient3' => $ligne['EvolutionClient3'],'NumFacClient2' => $ligne['NumFacClient2'], 'NumFacClient3' => $ligne['NumFacClient3'], 'NomApporteur1' => $ligne['NomApporteur1'], 'NomApporteur2' => $ligne['NomApporteur2'], 'NumRegApporteur1' => $ligne['NumRegApporteur1'], 'NumRegApporteur2' => $ligne['NumRegApporteur2'], 'MontantRegApporteur1' => $ligne['MontantRegApporteur1'], 'MontantRegApporteur2' => $ligne['MontantRegApporteur2'], 'MontantApporteur' => $ligne['MontantApporteur'], 'NumSiege' => $ligne['NumSiege']);}
?>
Tableau de synthése

<form action="synthese.php" method="post">
<?php
if (isset($_POST['action']) and $_POST['action'] == 'VALIDER')
{
$CodeCom=htmlspecialchars($_POST['CodeCom']);
$result mysqli_query($lien,"select NumSiege from bdcommercial WHERE CodeCom'$CodeCom'");
$ligne = mysqli_fetch_array($result);
if ($ligne[0] > 0)
{
$NumSiege = $ligne[0];
}
}
else
{
$resultat = mysqli_query($lien, "Select CodeCom, NomCom, PreCom from bdcommercial where NumSiege='$NumSiege'");
if (!$resultat)
{
$erreur = 'Erreur de récupération de la liste des commerciaux';
include 'erreur.html.php';
exit();
}
$bdcommercial = array();
while ($ligne = mysqli_fetch_array($resultat))
{
$bdcommercial[] = array('CodeCom' => $ligne['CodeCom'], 'NomCom' => $ligne['NomCom'], 'PreCom' => $ligne['PreCom']);
}
}
?>


<label for="CodeCom">Commercial : </label>
<select name="CodeCom" id="CodeCom">
<option value=""<?php echo $CodeCom;?>"">Choisir un commercial</option>
<?php foreach ($bdcommercial as $commercial): ?>
<option value="<?php print_html($commercial['CodeCom']); ?>">
<?php print_html($commercial['CodeCom']); ?>
</option>
<?php endforeach; ?>
</select>





</form>
<?php
if (isset($_POST['ACTION']) and $_POST['ACTION'] == 'CALCULER')
{
$NumInterne=htmlspecialchars($_POST['NumInterne']);
$NumSiege=htmlspecialchars($_POST['NumSiege']);
$CodeCom=htmlspecialchars($_POST['CodeCom']);
$MontantFactureClient=htmlspecialchars($_POST['MontantFactureClient']);
$MontantFactureBanque=htmlspecialchars($_POST['MontantFactureBanque']);
$MontantApporteur=htmlspecialchars($_POST['MontantApporteur']);
require_once('../gescompt/includes/magicquotes.inc.php');
require_once('../gescompt/includes/auxiliaires.inc.php');
require_once('../gescompt/includes/bd.inc.php');
$resultat mysqli_query($lien, "select ((MontantFactureClient + MontantFactureBanque)-MontantApporteur) as TOTALDOSSIER from bdcommission WHERE NumInterne'$NumInterne' AND NumSiege ='$NumSiege'");
if (!$resultat)
{
$erreur = 'erreur de la lecture : '.mysqli_error($lien);
include 'erreur.html.php';
exit();
}
$bdcommission = array();
while ($ligne = mysqli_fetch_array($resultat))
{
$bdcommission[]= array('TOTALDOSSIER' => $ligne ['TOTALDOSSIER']);
}
foreach ($bdcommission as $commission):
$nb = $commission['TOTALDOSSIER'];
$sql = "UPDATE bdcommission set Total='$nb' WHERE NumInterne ='$NumInterne' AND NumSiege ='$NumSiege'";
if (!mysqli_query($lien, $sql))
{
$erreur = "erreur dans la modification de la facture :" .mysqli_error($lien);
include 'erreur.html.php';
exit();
}
endforeach;

}
?>




<?php echo "N° Interne, Com, Nom Bqe, N° Fac Bqe1, Evo Fac Bqe1, Mt Fac Bqe1, N° Fac Bqe2, Evo Fac Bqe2, Mt Fac Bqe2, N° Fac Bqe3, Evo Fac Bqe3, Mt Fac Bqe3, Total Bqe, Nom Clt, N° Fac clt1, Evo Fac clt1, Mt Fac clt1, N° Fac clt2, Evo Fac clt2, Mt Fac clt2, N° Fac clt3, Evo Fac clt3, Mt Fac clt3, Total Clt, N° Reg App1, Nom App1, Mt App1, N° Reg App2, Nom App2, Mt App2, Total App, Calculer, Total, Taux Com, Calculer, MontantCommission, Cloturé, \" ; ?>
<?php foreach ($bdcommission as $synhthese): ?>
<form action =\"synthese.php\" method=\"POST\">
<?php echo \"----
"?>"/> <?php ", \" ; ?>
<?php echo \""?>"/> <?php ", \" ; ?>
\"/>
<?php if (empty($synhthese['NomBanque']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['NumFacBanque1']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['EvolutionFacBanque1']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['MontantFacBanque1']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['NumFacBanque2']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['EvolutionBanque2']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['MontantFacBanque2']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['NumFacBanque3']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['EvolutionBanque3']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['MontantFacBanque3']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['MontantFactureBanque']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['NomClient']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['NumFacClient1']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['EvolutionFacClient1']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['MontantFacClient1']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ; }
?>
<?php if (empty($synhthese['NumFacClient2']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['EvolutionClient2']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['MontantFacClient2']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['NumFacClient3']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['EvolutionClient3']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['MontantFacClient3']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['MontantFactureClient']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['NumRegApporteur1']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['NomApporteur1']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['MontantRegApporteur1']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['NumRegApporteur2']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['NomApporteur2']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['MontantRegApporteur2']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['MontantApporteur']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>

,
<?php if (empty($synhthese['Total']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>
<?php if (empty($synhthese['TauxCom']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ;
}
?>

,
<?php if (empty($synhthese['MontantCommission']))
{
$NomClientBanque = \"0\";
echo \""?>"/><?php ", \" ;
}else
{
echo \""?>"/> <?php ", \" ; }
?>
<?php endforeach; ?>
</form>
<?php echo "
"; ?>





<?php /*?>

<?php
$resultat = mysqli_query($lien, "SELECT TYPE FROM bdutilisateur WHERE CodeCom='$CodeCom'");
$ligne = mysqli_fetch_array($resultat);
if ($ligne[0] == 'COMMERCIAL')
{
?>
[menucommercial.php?CodeCom=<?php echo $CodeCom; ?> ]
<?php
}
else
{
?>
[menu.php?CodeCom=<?php echo $CodeCom; ?> ]
<?php
}
?>


<?php */?>
<?php /*?><?php
pied();
?><?php */?>

</html>

mais lorsque je clique sur le bouton j'ai le message suivant qui apparaît et je ne comprend pas pourquoi ????
voici le message :

Notice: Undefined index: CodeCom in C:\Program Files\EasyPHP-5.3.3\www\gescompt\synthese.php on line 172


quelqu'un peut il m'aider ???

merci d'avance

Bonne journée

Aurélie

1 réponse

inwebo Messages postés 380 Date d'inscription lundi 12 novembre 2007 Statut Membre Dernière intervention 23 octobre 2014
4 nov. 2011 à 10:48
bonjour,

[list]
[*] Utilise les balises de code adéquates
[*] Montre nous que le code nécessaire, par exemple je ne pense vraiment pas que le CSS soit vraiment indispensable.
/list

Cela ressemble au cas classique d'utilisation d'une variable sans que celle ci existe au préalable. Le plus simple avant d'utiliser c'est de vérifier son existence avant sont utilisation. Pour cela nous avons l'opérateur ternaire.

ce qui donne :

( !isset( ta_variable_a_tester ) ) ? affectation valeur par defaut : RIEN ;

________________________________________
( $toBe || !$toBe ) = $this->Question();
0
Rejoignez-nous