Bonjour à tous,
Je suis débutant en javascript et j'essaye de créer une alerte dans ma petite application php.
Le contexte : Un utilisateur rentre des valeurs via un formulaire, de là je met en place une alerte lui indiquant si sa rétrocession est inférieur ou supérieur à 56.
J'utilise des variables php que je passe via des input type"hidden", ici je les déjà remplies, dans mon appli elles seront renseignées par la bdd.
voici le code :
la partie php/html
la partie javascript
Donc mon problème est que quand j'utilise cette méthode (en remplissant déjà mes variables php, j'ai bien mon réusltat, si je les remplies via la bdd j'ai un NaN.
J'ai effectué des débugs avec Typeof et toutes mes variables sont "true".
Je n'y comprend plus rien.
Merci de votre aide.
Je suis débutant en javascript et j'essaye de créer une alerte dans ma petite application php.
Le contexte : Un utilisateur rentre des valeurs via un formulaire, de là je met en place une alerte lui indiquant si sa rétrocession est inférieur ou supérieur à 56.
J'utilise des variables php que je passe via des input type"hidden", ici je les déjà remplies, dans mon appli elles seront renseignées par la bdd.
voici le code :
la partie php/html
<?php
$prix_materiel=15500;
$taux_ri=44.12;
$frais1=0;
$frais2=0;
$tva1=1317.50;
$tva2=0;
?>
<form action="" method="post" enctype="multipart/form-data" name="" id="formulaireFinancement" class="formulaire">
<input type="hidden" name="prix_materiel" id="prix_materiel" value="<?php echo $prix_materiel; ?>">
<input type="hidden" name="taux_ri" id="taux_ri" value="<?php echo $taux_ri; ?>">
<input type="hidden" name="frais1" id="frais1" value="<?php echo $frais1; ?>">
<input type="hidden" name="frais2" id="frais2" value="<?php echo $frais2; ?>">
<input type="hidden" name="tva1" id="tva1" value="<?php echo $tva1; ?>">
<input type="hidden" name="tva2" id="tva2" value="<?php echo $tva2; ?>">
<input type="text" name="montant_2" id="montant_2" class="input_form">
<input type="text" name="montant_subvention" id="montant_subvention" class="input_form">
<input type="text" name="deduction_base" id="deduction_base" onblur="RetroCession()" class="input_form">
la partie javascript
<script>
function RetroCession()
{
var retro=parseFloat(document.getElementById("formulaireFinancement").elements['montant_2'].value);
if (!isNaN (retro))
{
var montant_2 = parseFloat(document.getElementById("formulaireFinancement").elements['montant_2'].value);
var deduction_base = parseFloat(document.getElementById("formulaireFinancement").elements['deduction_base'].value);
var montant_subvention = parseFloat(document.getElementById("formulaireFinancement").elements['montant_subvention'].value);
var prix_materiel = parseFloat(document.getElementById("formulaireFinancement").elements['prix_materiel'].value);
var tvanpr = parseFloat(document.getElementById("formulaireFinancement").elements['tva1'].value);
var taux_ri = parseFloat(document.getElementById("formulaireFinancement").elements['taux_ri'].value);
var tva_percue = parseFloat(document.getElementById("formulaireFinancement").elements['tva2'].value);
var frais1 = parseFloat(document.getElementById("formulaireFinancement").elements['frais1'].value);
var tva_net = (tvanpr)+(tva_percue) ; // debug ok c'est number
var apport_net = (montant_2)-(tva_net) ; // debug ok c'est number
var total1 = (prix_materiel)+(frais1) ; // debug ok c'est number
var total2 = (tvanpr)+(montant_subvention)+(deduction_base) ; // debug ok c'est number
var base_defisc = (total1)-(total2) ; // debug ok c'est number
var montant_ri = (base_defisc)*(taux_ri) ; // debug ok c'est number
var retro_ok = 56 ; // debug ok c'est number
var retrocession = (apport_net/montant_ri)*10000 ; // debug ok c'est number
var retrocession_1 = (retrocession) ;
//alert("la rétrocession 1 est de : "+retrocession);
//var result = (typeof montant_subvention === 'number');
if (retrocession_1 < retro_ok)
{
alert("ATTENTION votre rétrocession est inférieur à 56%. Elle est de : "+retrocession+" %");
//alert("Votre retrocession est de : "+retrocession+" %.");
}
else
{
alert("Votre rétrocession est de : "+retrocession+" %.");
//alert("Votre retrocession 1 net est de : "+retrocession_1);
}
}else
{
alert("Vous devez entrer un chiffre, en utilisant le . comme séparateur");
}
}</script>
Donc mon problème est que quand j'utilise cette méthode (en remplissant déjà mes variables php, j'ai bien mon réusltat, si je les remplies via la bdd j'ai un NaN.
J'ai effectué des débugs avec Typeof et toutes mes variables sont "true".
Je n'y comprend plus rien.
Merci de votre aide.