Problème d'alerte Javascript
Résolu
smoky184
Messages postés
134
Statut
Membre
-
smoky184 Messages postés 134 Statut Membre -
smoky184 Messages postés 134 Statut Membre -
Bonjour,
Je suis en train de faire un feuille de comptage de caisse en html/javascipt
Elle se compose de :
1 PHP de calculs
1 JS pour les calculs
1 JS pour la vérification
1 PHP de résultats
Mon problème est que la vérification ne fait pas ce que je lui demande. A savoir que lorsque qu'on rajoute le montant des distributeur elle me trouve une différence de 0.00€ même quand il n'y a pas d'erreur.
J'ai beau retourné le problème dans tout les sens je ne trouve pas le soucis
Je vous laisse au cas ou mes page.
Calcul.php :
Calculs.JS
Verif.JS :
Je continu à cherche de mon coté mais si quelqu'un trouve le soucis je suis prenneur.
Merci à tous
Je suis en train de faire un feuille de comptage de caisse en html/javascipt
Elle se compose de :
1 PHP de calculs
1 JS pour les calculs
1 JS pour la vérification
1 PHP de résultats
Mon problème est que la vérification ne fait pas ce que je lui demande. A savoir que lorsque qu'on rajoute le montant des distributeur elle me trouve une différence de 0.00€ même quand il n'y a pas d'erreur.
J'ai beau retourné le problème dans tout les sens je ne trouve pas le soucis
Je vous laisse au cas ou mes page.
Calcul.php :
<head>
<link rel="stylesheet" href="template.css" type="text/css" />
<script type="text/javascript" src="calculs.js"></script>
<script type="text/javascript" src="verif.js"></script>
<script type="text/javascript" src="bulle.js"></script>
<script type="text/javascript" >
function trans()
{
document.getElementById('nombre1t').value = document.form1.nombre1.value;
document.getElementById('nombre2t').value = document.form1.nombre2.value;
document.getElementById('nombre3t').value = document.form1.nombre3.value;
document.getElementById('nombre4t').value = document.form1.nombre4.value;
document.getElementById('nombre5t').value = document.form1.nombre5.value;
document.getElementById('nombre6t').value = document.form1.nombre6.value;
document.getElementById('nombre7t').value = document.form1.nombre7.value;
document.getElementById('nombre8t').value = document.form1.nombre8.value;
document.getElementById('nombre9t').value = document.form1.nombre9.value;
document.getElementById('nombre10t').value = document.form1.nombre10.value;
document.getElementById('nombre11t').value = document.form1.nombre11.value;
document.getElementById('nombre12t').value = document.form1.nombre12.value;
document.getElementById('nombre13t').value = document.form1.nombre13.value;
document.getElementById('tot1t').value = document.form1.tot1.value;
document.getElementById('tot2t').value = document.form1.tot2.value;
document.getElementById('tot3t').value = document.form1.tot3.value;
document.getElementById('tot4t').value = document.form1.tot4.value;
document.getElementById('tot5t').value = document.form1.tot5.value;
document.getElementById('tot6t').value = document.form1.tot6.value;
document.getElementById('tot7t').value = document.form1.tot7.value;
document.getElementById('tot8t').value = document.form1.tot8.value;
document.getElementById('tot9t').value = document.form1.tot9.value;
document.getElementById('tot10t').value = document.form1.tot10.value;
document.getElementById('tot11t').value = document.form1.tot11.value;
document.getElementById('tot12t').value = document.form1.tot12.value;
document.getElementById('tot13t').value = document.form1.tot13.value;
document.getElementById('piecest').value = document.form1.pieces.value;
document.getElementById('billetst').value = document.form1.billets.value;
document.getElementById('totalcaisset').value = document.form1.totalcaisse.value;
document.getElementById('totalt').value = document.form1.total.value;
document.getElementById('chqt').value = document.form1.chq.value;
document.getElementById('ancvt').value = document.form1.ancv.value;
document.getElementById('virmt').value = document.form1.virm.value;
}
</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Feuille de calcul de caisse</title>
</head>
<body>
<?php
if (!empty($_POST['journal']))
{
$journal = $_POST['journal']; }
else { $journal = 0 ;
}
?>
<p id="antiprint"><b>Pré caisse</b>
<br />
Faites votre caisse en entrant le nombre de pièces et de billets dans les champs prévus ainsi<br />que les informations d'inventaire et ou de remboursement (si nécessaire) puis cliquer sur "calculer".
<br />
Une fois calculée vous pouvez la "vérifier" et passez à l'étape 2.</p>
<br />
<br />
<div id="centrage">
<form name="form1" action="index.php?option=com_content&view=article&id=4" method="POST">
<p>Total journal de caisse :
<input type="text" name="journal" value="<?php echo number_format($journal,2); ?>" />
</p>
<p> </p>
<div id="calculs">
<span class="text">Pièces</span>
<br /><br />
<table>
<tr>
<td><span id"1" class="type" onMouseOver="infobulle(this, 'Pièces de 1 cent');">
0,01 €</span>
</td>
<td>
X
</td>
<td>
<input type="text" name="nombre1" id="nombre1" size="3" onblur="verif(this)">
</td>
<td>
=
</td>
<td>
<input type="text" name="tot1" disabled="disabled" class="disabled" size="4">
</td>
</tr>
<tr>
<td>
<span id="2" class="type" onMouseOver="infobulle(this, 'Pièces de 2 cents');">
0,02 €</span></td>
<td>
X
</td>
<td>
<input type="text" name="nombre2" id="nombre2" value="" size="3">
</td>
<td>
=
</td>
<td>
<input type="text" name="tot2" disabled="disabled" class="disabled" size="4">
</td>
</tr>
<tr>
<td>
<span id="3" class="type" onMouseOver="infobulle(this, 'Pièces de 5 cents');">
0,05 €</span></td>
<td>
X
</td>
<td>
<input type="text" name="nombre3" id="nombre3" value="" size="3">
</td>
<td>
=
</td>
<td>
<input type="text" name="tot3" disabled="disabled" class="disabled" size="4">
</td>
</tr>
<tr>
<td>
<span class="type" onMouseOver="infobulle(this, 'Pièces de 10 cents');">
0,10 €</span></td>
<td>
X
</td>
<td>
<input type="text" name="nombre4" id="nombre4" value="" size="3">
</td>
<td>
=
</td>
<td>
<input type="text" name="tot4" disabled="disabled" class="disabled" size="4">
</td>
</tr>
<tr>
<td>
<span class="type" onMouseOver="infobulle(this, 'Pièces de 20 cents');">
0,20 €</span></td>
<td>
X
</td>
<td>
<input type="text" name="nombre5" id="nombre5" value="" size="3">
</td>
<td>
=
</td>
<td>
<input type="text" name="tot5" disabled="disabled" class="disabled" size="4">
</td>
</tr>
<tr>
<td>
<span class="type" onMouseOver="infobulle(this, 'Pièces de 50 cents');">
0,50 €</span></td>
<td>
X
</td>
<td>
<input type="text" name="nombre6" id="nombre6" value="" size="3">
</td>
<td>
=
</td>
<td>
<input type="text" name="tot6" disabled="disabled" class="disabled" size="4">
</td>
</tr>
<tr>
<td>
<span class="type" onMouseOver="infobulle(this, 'Pièces de 1 euro');">
1,00 €</span></td>
<td>
X
</td>
<td>
<input type="text" name="nombre7" id="nombre7" value="" size="3">
</td>
<td>
=
</td>
<td>
<input type="text" name="tot7" disabled="disabled" class="disabled" size="4">
</td>
</tr>
<tr>
<td>
<span class="type" onMouseOver="infobulle(this, 'Pièces de 2 euros');">
2,00 €</span></td>
<td>
X
</td>
<td>
<input type="text" name="nombre8" id="nombre8" value="" size="3">
</td>
<td>
=
</td>
<td>
<input type="text" name="tot8" disabled="disabled" class="disabled" size="4">
</td>
</tr>
<tr><td colspan="5"> </td></tr>
<tr>
<td colspan="4"align="left">
Total pieces :
</td>
<td colspan="1" align="right">
<input type="text" name="pieces" disabled="disabled" class="disabled" size="4">
</td>
</tr>
</table>
<br /><hr />
<span class="text">Billets</span>
<br /><br />
<table>
<tr>
<td><span class="type" onMouseOver="infobulle(this, 'Billets de 5 euros');">
5,00 €</span></td>
<td>
X
</td>
<td>
<input type="text" name="nombre9" id="nombre9" value="" size="3">
</td>
<td>
=
</td>
<td>
<input type="text" name="tot9" disabled="disabled" class="disabled" size="4">
</td>
</tr>
<tr>
<td>
<span class="type" onMouseOver="infobulle(this, 'Billets de 10 euros');">
10,00 €</span></td>
<td>
X
</td>
<td>
<input type="text" name="nombre10" id="nombre10" value="" size="3">
</td>
<td>
=
</td>
<td>
<input type="text" name="tot10" disabled="disabled" class="disabled" size="4">
</td>
</tr>
<tr>
<td>
<span class="type" onMouseOver="infobulle(this, 'Billets de 20 euros');">
20,00 €</span></td>
<td>
X
</td>
<td>
<input type="text" name="nombre11" id="nombre11" value="" size="3">
</td>
<td>
=
</td>
<td>
<input type="text" name="tot11" disabled="disabled" class="disabled" size="4">
</td>
</tr>
<tr>
<td>
<span class="type" onMouseOver="infobulle(this, 'Billets de 50 euros');">
50,00 €</span></td>
<td>
X
</td>
<td>
<input type="text" name="nombre12" id="nombre12" value="" size="3">
</td>
<td>
=
</td>
<td>
<input type="text" name="tot12" disabled="disabled" class="disabled" size="4">
</td>
</tr>
<tr>
<td>
<span class="type" onMouseOver="infobulle(this, 'Billets de 100 euros');">
100,00 €</span></td>
<td>
X
</td>
<td>
<input type="text" name="nombre13" id="nombre13" value="" size="3">
</td>
<td>
=
</td>
<td>
<input type="text" name="tot13" disabled="disabled" class="disabled" size="4">
</td>
</tr>
<tr>
<td colspan="5"> </td>
</tr>
<tr>
<td colspan="4" align="left">Total billets : </td>
<td colspan="1" align="right"><input type="text" name="billets" disabled="disabled" class="disabled" size="4"></td>
</tr>
</table>
<br /><br />
</div>
<div id="info">
<span class="text">Inventaire</span>
<br /><br />
<table>
<tr>
<td align="left"><span class="type" onMouseOver="infobulle(this, ' Si l\'inventaire a été fait, veuillez<br /> indiquer le montant TOTAL des caisses distributeurs<br /> ci-contre.<br />(Inventaire uniquement)');">Total des distributeurs :</span></td>
<td align="right"><input type="text" name="distributeurs" size="4"></td>
</tr>
<tr>
<td align="left"><span class="type" onMouseOver="infobulle(this, ' Si de l\'argent des distributeurs a été<br /> remis en caisse, veuillez indiquer<br /> le montant de la remise ci-contre.<br />(Inventaire uniquement)');">remis en caisse :</span></td>
<td align="right"><input type="text" name="remise" size="4"></td>
</tr>
<tr>
<td colspan="2"> </td>
</tr>
<tr>
<td colspan="2" style="border-top:1px solid #000;"><span class="text">Remboursements</span></td>
</tr>
<tr>
<td colspan="2"> </td>
</tr>
<tr>
<td align="left"><span class="type" onMouseOver="infobulle(this, 'Si un ou pusieurs remboursements en espèces ont été fait<br /><i>à partir de la caisse</i> veuillez indiquer<br /> le montant TOTAL remboursé ci-contre.');">Remboursement en espèces :</span></td>
<td><input type="text" name="remboursement" size="4"></td>
</tr>
<tr>
<td colspan="2"> </td>
</tr>
<tr>
<td colspan="2" style="border-top:1px solid #000;"><span class="text">autres moyens de paiement</span></td>
</tr>
<tr>
<td colspan="2"> </td>
</tr>
<tr>
<td align="left"><span class="type" onMouseOver="infobulle(this, 'Montant TOTAL des chèques.');">Chèques :</span></td>
<td><input type="text" name="chq" size="4"></td>
</tr>
<tr>
<td align="left"><span class="type" onMouseOver="infobulle(this, 'Montant TOTAL des chèques vacances (ANCV).');">Chèques vacances :</span></td>
<td><input type="text" name="ancv" size="4"></td>
</tr>
<tr>
<td align="left"><span class="type" onMouseOver="infobulle(this, 'Montant TOTAL des virements.');">Virements :</span></td>
<td><input type="text" name="virm" size="4"></td>
</tr>
<tr>
<td colspan="2"> </td>
</tr>
<tr>
<td colspan="2" style="border-top:1px solid #000;"><span class="text">Totaux</span></td>
</tr>
<tr>
<td colspan="2"> </td>
</tr>
<tr>
<tr>
<td align="left"><span class="type" onMouseOver="infobulle(this, 'Montant de la caisse.');">Total caisse :</span></td>
<td align="right"><input type="text" name="totalcaisse" disabled="disabled" class="disabled" size="4"></td>
</tr>
<tr>
<td> </td>
<td><font color="#FF0000">-251</font></td>
</tr>
<tr>
<td align="left"><span class="type" onMouseOver="infobulle(this, 'Montant TOTAL des espèces de la journée.');">Total :</span></td>
<td align="right"><input type="text" name="total" disabled="disabled" class="disabled" size="4"></td>
</tr>
<tr>
<td colspan="2"> </td>
</tr>
<tr>
<td colspan="2" align="center"><br /><input type="button" class="calcull" value="calculer" onclick="cal();trans()" /><br /><input type="button" class="calcull" value="vérifier" onclick="validation()" /><br /><input type="submit" class="calcull" value="Etape 2 >" /></td>
</tr>
</table>
<input type="hidden" id="nombre1t" name="nombre1t" />
<input type="hidden" id="nombre2t" name="nombre2t" />
<input type="hidden" id="nombre3t" name="nombre3t" />
<input type="hidden" id="nombre4t" name="nombre4t" />
<input type="hidden" id="nombre5t" name="nombre5t" />
<input type="hidden" id="nombre6t" name="nombre6t" />
<input type="hidden" id="nombre7t" name="nombre7t" />
<input type="hidden" id="nombre8t" name="nombre8t" />
<input type="hidden" id="nombre9t" name="nombre9t" />
<input type="hidden" id="nombre10t" name="nombre10t" />
<input type="hidden" id="nombre11t" name="nombre11t" />
<input type="hidden" id="nombre12t" name="nombre12t" />
<input type="hidden" id="nombre13t" name="nombre13t" />
<input type="hidden" id="tot1t" name="tot1t" />
<input type="hidden" id="tot2t" name="tot2t" />
<input type="hidden" id="tot3t" name="tot3t" />
<input type="hidden" id="tot4t" name="tot4t" />
<input type="hidden" id="tot5t" name="tot5t" />
<input type="hidden" id="tot6t" name="tot6t" />
<input type="hidden" id="tot7t" name="tot7t" />
<input type="hidden" id="tot8t" name="tot8t" />
<input type="hidden" id="tot9t" name="tot9t" />
<input type="hidden" id="tot10t" name="tot10t" />
<input type="hidden" id="tot11t" name="tot11t" />
<input type="hidden" id="tot12t" name="tot12t" />
<input type="hidden" id="tot13t" name="tot13t" />
<input type="hidden" id="piecest" name="piecest" />
<input type="hidden" id="billetst" name="billetst" />
<input type="hidden" id="totalcaisset" name="totalcaisset" />
<input type="hidden" id="totalt" name="totalt" />
<input type="hidden" id="chqt" name="chqt" />
<input type="hidden" id="ancvt" name="ancvt" />
<input type="hidden" id="virmt" name="virmt" />
<input type="hidden" id="enveloppe" name="enveloppe" />
</div>
</form>
</div>
</body>
</html>
Calculs.JS
function cal() {
// Recup nombres de pièces et billets //
var nb1=document.form1.nombre1.value;
var nb2=document.form1.nombre2.value;
var nb3=document.form1.nombre3.value;
var nb4=document.form1.nombre4.value;
var nb5=document.form1.nombre5.value;
var nb6=document.form1.nombre6.value;
var nb7=document.form1.nombre7.value;
var nb8=document.form1.nombre8.value;
var nb9=document.form1.nombre9.value;
var nb10=document.form1.nombre10.value;
var nb11=document.form1.nombre11.value;
var nb12=document.form1.nombre12.value;
var nb13=document.form1.nombre13.value;
// Calculs montant pièces et billetts//
var res1=Number(0.01)*Number(nb1);
var res2=Number(0.02)*Number(nb2);
var res3=Number(0.05)*Number(nb3);
var res4=Number(0.10)*Number(nb4);
var res5=Number(0.20)*Number(nb5);
var res6=Number(0.50)*Number(nb6);
var res7=Number(1)*Number(nb7);
var res8=Number(2)*Number(nb8);
var res9=Number(5)*Number(nb9);
var res10=Number(10)*Number(nb10);
var res11=Number(20)*Number(nb11);
var res12=Number(50)*Number(nb12);
var res13=Number(100)*Number(nb13);
// Recup des résultats //
document.form1.tot1.value=res1.toFixed(2);
document.form1.tot2.value=res2.toFixed(2);
document.form1.tot3.value=res3.toFixed(2);
document.form1.tot4.value=res4.toFixed(2);
document.form1.tot5.value=res5.toFixed(2);
document.form1.tot6.value=res6.toFixed(2);
document.form1.tot7.value=res7.toFixed(2);
document.form1.tot8.value=res8.toFixed(2);
document.form1.tot9.value=res9.toFixed(2);
document.form1.tot10.value=res10.toFixed(2);
document.form1.tot11.value=res11.toFixed(2);
document.form1.tot12.value=res12.toFixed(2);
document.form1.tot13.value=res13.toFixed(2);
var pie1=document.form1.tot1.value;
var pie2=document.form1.tot2.value;
var pie3=document.form1.tot3.value;
var pie4=document.form1.tot4.value;
var pie5=document.form1.tot5.value;
var pie6=document.form1.tot6.value;
var pie7=document.form1.tot7.value;
var pie8=document.form1.tot8.value;
var bil9=document.form1.tot9.value;
var bil10=document.form1.tot10.value;
var bil11=document.form1.tot11.value;
var bil12=document.form1.tot12.value;
var bil13=document.form1.tot13.value;
// Calculs des totaux pièces et bilets //
var totpie=Number(pie1)+Number(pie2)+Number(pie3)+Number(pie4)+Number(pie5)+Number(pie6)+Number(pie7)+Number(pie8);
var totbil=Number(bil9)+Number(bil10)+Number(bil11)+Number(bil12)+Number(bil13);
document.form1.billets.value=totbil.toFixed(2);
document.form1.pieces.value=totpie.toFixed(2);
// calculs des totaux journée //
var biltot=document.form1.billets.value;
var pietot=document.form1.pieces.value;
var dist=document.form1.distributeurs.value;
var remi=document.form1.remise.value;
var remb=document.form1.remboursement.value;
var totcai=Number(biltot)+Number(pietot);
document.form1.totalcaisse.value=totcai.toFixed(2);
// Calcul du total de feuille de caisse //
var caitot=document.form1.totalcaisse.value;
var totjou=Number(caitot)-251;
document.form1.total.value=totjou.toFixed(2);
}
Verif.JS :
function validation() {
enveloppe = document.form1.total.value;
different = document.form1.total.value - (document.form1.journal.value - document.form1.remboursement.value);
if (document.form1.total.value == '') {
alert('vous navez pas encore calculé votre feuille de caisse');
}
else if (document.form1.total.value != ((document.form1.journal.value - document.form1.distributeurs.value) - document.form1.remboursement.value)) {
alert('vous avez :\n' + different.toFixed(2) + '€ de difference entre la caisse et fols !');
}
else if (document.form1.total.value == ((document.form1.journal.value - document.form1.distributeurs.value) - document.form1.remboursement.value)) {
alert('Votre caisse est bonne ! \n\nVous pouvez passer à l\'étape suivante');
}
}
Je continu à cherche de mon coté mais si quelqu'un trouve le soucis je suis prenneur.
Merci à tous
3 réponses
-
parce que dans la partie validation il me semble que tu ne passes par par la fonction Number chaque fois que tu fais une operation à partir des .value
-
Rien à changé :
tout fonctionne. Mais lorsque je rajoute un montant dans le distributeurs plus rien ne va il me trouve une différence de +0.00€ -
J'ai trouvé !!
Les inputs revoyaient des résultats différents si il étaient calculés ou si ils étaient rempli.
document.form1.total.value != (document.form1.journal.value - document.form1.distrib.value)
La solution dans le verif.js était de tout mettre sous forme de variable.
ça donne en simplifié :
var especes= document.form1.total.value; var journal= document.form1.journal.value; var distrib= document.form1.distrib.value; Number(espece) == (Number(journal) - number(distrib));