par
finipe » 05 oct. 2015, 00:26
Bonjour à tous,
J'ai un tableau de prix dans lequel j'affiche des valeurs calculées selon une formule relativement simple, mais qui fait appel à un tableau de plusieurs dimensions :
Code : Tout sélectionner
$COEFF = array(
1 => array(
250 => array( 2 => array('A' => 0.45, 'B' => 12), 3 => array('A' => 0.65, 'B' => 12), 4 => array('A' => 1.30, 'B' => 88) ),
500 => array( 2 => array('A' => 0.60, 'B' => 13), 3 => array('A' => 0.77, 'B' => 13), 4 => array('A' => 1.40, 'B' => 93) ),
1000 => array( 2 => array('A' => 0.80, 'B' => 14), 3 => array('A' => 0.84, 'B' => 14), 4 => array('A' => 1.40, 'B' => 100) ),
2000 => array( 2 => array('A' => 1.43, 'B' => 26), 3 => array('A' => 1.39, 'B' => 26), 4 => array('A' => 2.25, 'B' => 142) ),
//[etc, jusqu'à...]
19000 => array( 2 => array('A' => 8.58, 'B' => 224), 3 => array('A' => 10.54, 'B' => 224), 4 => array('A' => 15.60, 'B' => 678) ),
20000 => array( 2 => array('A' => 8.95, 'B' => 236), 3 => array('A' => 11.00, 'B' => 236), 4 => array('A' => 16.00, 'B' => 708) )
),
5 => array(
250 => array( 6 => array('A' => 0.45, 'B' => 12), 7 => array('A' => 0.65, 'B' => 12), 8 => array('A' => 1.30, 'B' => 88) ),
500 => array( 6 => array('A' => 0.60, 'B' => 13), 7 => array('A' => 0.77, 'B' => 13), 8 => array('A' => 1.40, 'B' => 93) ),
1000 => array( 6 => array('A' => 0.80, 'B' => 14), 7 => array('A' => 0.84, 'B' => 14), 8 => array('A' => 1.40, 'B' => 100) ),
//[etc, jusqu'à...]
20000 => array( 6 => array('A' => 8.95, 'B' => 236), 7 => array('A' => 11.00, 'B' => 236), 8 => array('A' => 16.00, 'B' => 708) )
)
);
La formule de calcul est la suivante :
Code : Tout sélectionner
// Exemples de valeurs pour $A et $B :
// $A = $COEFF[1][2000][3]['A'];
// $B = $COEFF[5][4000][8]['B'];
function Calcul_Prix($LG, $HT, $A, $B, $REDUC_CATEGORIE, $RECTOVERSO)
{
// Réduction ramenée à un coefficient
$REDUCTION = (100 - $REDUCTION_GLOBALE - $REDUC_CATEGORIE)/100;
// Calcul du prix TTC
$RETOUR = (($LG*$HT*$A)+$B)*$REDUCTION*$RECTOVERSO;
// Calcul du prix HT
$RETOUR = $RETOUR*0.8;
// Arrondi à 2 décimales
$RETOUR = round($RETOUR, 2);
return $RETOUR;
}
Ça fonctionne, tout va bien. Seulement voilà, j'ai aussi besoin de pouvoir faire ce calcul sans recharger ma page, en faisant appel au même tableau, et à la même formule. Y a-t-il un moyen de faire ça par jquery ? Le but serait notamment de ne pas avoir à faire un double du tableau en javascript...
Merci pour votre aide !
Bonjour à tous,
J'ai un tableau de prix dans lequel j'affiche des valeurs calculées selon une formule relativement simple, mais qui fait appel à un tableau de plusieurs dimensions :
[code]$COEFF = array(
1 => array(
250 => array( 2 => array('A' => 0.45, 'B' => 12), 3 => array('A' => 0.65, 'B' => 12), 4 => array('A' => 1.30, 'B' => 88) ),
500 => array( 2 => array('A' => 0.60, 'B' => 13), 3 => array('A' => 0.77, 'B' => 13), 4 => array('A' => 1.40, 'B' => 93) ),
1000 => array( 2 => array('A' => 0.80, 'B' => 14), 3 => array('A' => 0.84, 'B' => 14), 4 => array('A' => 1.40, 'B' => 100) ),
2000 => array( 2 => array('A' => 1.43, 'B' => 26), 3 => array('A' => 1.39, 'B' => 26), 4 => array('A' => 2.25, 'B' => 142) ),
//[etc, jusqu'à...]
19000 => array( 2 => array('A' => 8.58, 'B' => 224), 3 => array('A' => 10.54, 'B' => 224), 4 => array('A' => 15.60, 'B' => 678) ),
20000 => array( 2 => array('A' => 8.95, 'B' => 236), 3 => array('A' => 11.00, 'B' => 236), 4 => array('A' => 16.00, 'B' => 708) )
),
5 => array(
250 => array( 6 => array('A' => 0.45, 'B' => 12), 7 => array('A' => 0.65, 'B' => 12), 8 => array('A' => 1.30, 'B' => 88) ),
500 => array( 6 => array('A' => 0.60, 'B' => 13), 7 => array('A' => 0.77, 'B' => 13), 8 => array('A' => 1.40, 'B' => 93) ),
1000 => array( 6 => array('A' => 0.80, 'B' => 14), 7 => array('A' => 0.84, 'B' => 14), 8 => array('A' => 1.40, 'B' => 100) ),
//[etc, jusqu'à...]
20000 => array( 6 => array('A' => 8.95, 'B' => 236), 7 => array('A' => 11.00, 'B' => 236), 8 => array('A' => 16.00, 'B' => 708) )
)
);[/code]
La formule de calcul est la suivante :
[code]// Exemples de valeurs pour $A et $B :
// $A = $COEFF[1][2000][3]['A'];
// $B = $COEFF[5][4000][8]['B'];
function Calcul_Prix($LG, $HT, $A, $B, $REDUC_CATEGORIE, $RECTOVERSO)
{
// Réduction ramenée à un coefficient
$REDUCTION = (100 - $REDUCTION_GLOBALE - $REDUC_CATEGORIE)/100;
// Calcul du prix TTC
$RETOUR = (($LG*$HT*$A)+$B)*$REDUCTION*$RECTOVERSO;
// Calcul du prix HT
$RETOUR = $RETOUR*0.8;
// Arrondi à 2 décimales
$RETOUR = round($RETOUR, 2);
return $RETOUR;
}[/code]
Ça fonctionne, tout va bien. Seulement voilà, j'ai aussi besoin de pouvoir faire ce calcul sans recharger ma page, en faisant appel au même tableau, et à la même formule. Y a-t-il un moyen de faire ça par jquery ? Le but serait notamment de ne pas avoir à faire un double du tableau en javascript...
Merci pour votre aide !