[RESOLU] Problème $post aléatoire jscript et mysql

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Problème $post aléatoire jscript et mysql

Re: Problème $post aléatoire jscript et mysql

par jeanmaki » 07 déc. 2013, 17:45

Bon j'ai pas eu de réponse mais j'ai trouver la réponse sur un autre forum merci quand même^^
L'erreur était la suivante : il fallait placer le Blitz juste avant le return false.
comme ceci :

[javascript]
function Valider(){
votreponse=mental.votresultat.value;
votreponse2=mental.votresultat.value;
if(votreponse==result)
{
alert('GENIAL!!!\nVOUS ETES FORT!!!');
$('.mental_form').submit(function() {
$.post('calcul.php', { c1: $('.mental_form input[name=c1]').val(),
s1: $('.mental_form input[name=s1]').val(),
c2: $('.mental_form input[name=c2]').val(),
votresultat: $('.mental_form input[name=votresultat]').val()
},
function(data){
if (data.result == 1){
$('.mental_form .resultatS').fadeIn('slow', function () {
$(this).delay(1000).fadeOut('slow');
});
} else {
$('.mental_form .resultatE').fadeIn('slow', function () {
$(this).delay(1000).fadeOut('slow');
});
}

}
);
Blitz();
return false;
});
document.getElementById("calcul").value = "";
chronoContinue();
}
else
{
alert('OUPS! Erreur de calcul!\nReéssayez...');
chronoContinue();
}

}
[/javascript]

Problème $post aléatoire jscript et mysql

par jeanmaki » 06 déc. 2013, 13:51

Bonjour je souhaite réaliser une page de calcul mental en html/jscript/php/mysql et j'ai un petit soucis concernant ce que j'envoie à la base de donnée et ce qu'elle reçoit.
En effet si je donne un exemple :
1er calcul 2+2=? je tape 4
2eme calcul 3+3=?

lorsque j'ai taper 4 et donc valider la base de donnée enregistre le 4 mais sur le calcul d'apres soit 3+3=4

calcul.html
<html lang="en" >
<head>
    <title>Powerful Chat System - Lesson 7</title>
	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
	<link href="css/calculcss.css" rel="stylesheet" type="text/css" />
    <script src="http://code.jquery.com/jquery-latest.min.js"></script>
    
</head>
<body>
<center>
<font face="Comic Sans MS" size="6" color="red">CALCUL MENTAL...</font>
<br>
<font face="Comic Sans MS" size="4" color="blue">Quel est le résultat de:</font>
<form class="mental_form" name="mental" action="calcul.php" style="font-family: Comic Sans MS; font-size: 14 pt">
<input type="text" maxlength="3" size="3" style="font-family: Comic Sans MS; font-size: 18 pt" id="chiffre1" name="c1">
<input type="text" maxlength="1" size="1" style="font-family: Comic Sans MS; font-size: 18 pt" id="signe1" name="s1">
<input type="text" maxlength="3" size="3" style="font-family: Comic Sans MS; font-size: 18 pt" id="chiffre2" name="c2">
<br>
<input type="text" maxlength="3" size="3" style="font-family: Comic Sans MS; font-size: 18 pt" id="chiffre3" name="c3">
<input type="text" maxlength="1" size="1" style="font-family: Comic Sans MS; font-size: 18 pt" id="signe2" name="s2">
<input type="text" maxlength="3" size="3" style="font-family: Comic Sans MS; font-size: 18 pt" id="chiffre4" name="c4">
<br>
<input type="text" maxlength="3" size="3" id="resultat" name="resultat" style="color: white; font-size: 24pt" readonly="readonly">
<input type="text" maxlength="3" size="3" id="resultat2" name="resultat2" style="color: white; font-size: 24pt" readonly="readonly">
<br>
<input type="text" name="T1" size="3" id="inter1">
<input type="text" name="T2" size="3" id="inter2">
<p>
<input type="text" id="calcul" name="calcul" maxlength="3" size="3" style="font-family: Comic Sans MS; font-size: 24pt" >

<font size="24pt"> = </font>
<input type="text" maxlength="3" size="3" id="votresultat" name="votresultat" style="font-family: Comic Sans MS; font-size: 24pt" onFocus="this.value=''" />

<input type="submit" name="submit" value="Valider votre réponse" onClick="Valider();" id="validation" />
<br>
<br>
<input type="text" maxlength="3" size="3" id="vraireponse" name="vraireponse" style="color: #FF0000; font-size: 24pt; font-family: Comic Sans MS; font-style: italic; font-weight: bold" readonly="readonly">
<input type="text" maxlength="3" size="3" id="vraireponse2" name="vraireponse2" style="color: #FF0000; font-size: 24pt; font-family: Comic Sans MS; font-style: italic; font-weight: bold" readonly="readonly">

<div>
	<h3 class="resultatS">Votre resultat envoyé</h3>
    <h3 class="resultatE">Votre resultat non envoyé</h3>
	<h3 class="resultat2S">Resultat 2 envoyé</h3>
	<h3 class="resultat2E">Resultat 2 non envoyé</h3>
	<h3 class="c2S">Chiffre2 envoyé</h3>
	<h3 class="c2E">Chiffre2 non envoyé</h3>
	<h3 class="signeS">Signe envoyé</h3>
	<h3 class="signeE">Signe non envoyé</h3>
</div>

<br>
<input type="button" value="Générer un calcul aléatoire" onClick="Blitz();" id="aleatoire">

<br>
<input type="button" value="Réponse" onClick="Soluce();" id="boutonreponse">
<br>
<input type="button" value="Nouveau compte" OnClick="javascript:location.reload()">
</p>
<br>
<input type="text" id="calc1" name="calc1">
<input type="text" id="calc2" name="calc2">
</form>
<span id="chronotime">0:00:00:00</span>
<font size="1" face="Comic Sans MS">
</center>
<script src="js/calcul.js"></script>
</body>
</html>

calcul.js
[javascript]

function addEvent(obj, event, fct) {
if (obj.attachEvent) //Est-ce IE ?
obj.attachEvent("on" + event, fct); //Ne pas oublier le "on"
else
obj.addEventListener(event, fct, true);
}

addEvent(window , "load", chronoStart); //On les lance toutes les deux au chargement de la page
addEvent(window , "load", Blitz);
addEvent(document.getElementById('truc'), "click", al3); //Un clic sur "truc" déclenche la fonction al3()
function lancer(fct) {
addEvent(window, "load", fct);
}

startTime = 0
var start = 0
var end = 0
var diff = 0
var timerID = 0
function chrono(){
end = new Date()
diff = end - start
diff = new Date(diff)
var msec = diff.getMilliseconds()
var sec = diff.getSeconds()
var min = diff.getMinutes()
var hr = diff.getHours()-1
if (min < 10){
min = "0" + min
}
if (sec < 10){
sec = "0" + sec
}
if(msec < 10){
msec = "00" +msec
}
else if(msec < 100){
msec = "0" +msec
}
document.getElementById("chronotime").innerHTML = hr + ":" + min + ":" + sec + ":" + msec
timerID = setTimeout("chrono()", 10)
}

function chronoStop(){
clearTimeout(timerID)
}
function chronoContinue(){
start = new Date()-diff
start = new Date(start)
chrono()
}

function chronoStart(){
start = new Date()
chrono()
}

function Blitz(){
Calculun();
}

function Blitz2(){
Calcultrois();
}

function Calculun(){
chiffreun = Math.round(Math.random()*10);
window.document.getElementById('chiffre1').value = chiffreun;
window.document.getElementById('calcul').value +=chiffreun;
window.document.getElementById('calc1').value +=chiffreun;
Signeun();
}

function Calcultrois(){
chiffretrois = Math.round(Math.random()*10);
window.document.getElementById('chiffre3').value = chiffretrois;
window.document.getElementById('calcul').value +=chiffretrois;
window.document.getElementById('calc2').value +=chiffretrois;
Signedeux();
}

function Signeun(){
nbr = Math.round(Math.random()*0); //mettre 1 si deux signe different etc..
signeun = new Array(1) // mettre 2 si deux signe different
signeun[0] ='+' // mettre 1 si il y a un deuxieme signe
window.document.getElementById('signe1').value=signeun[nbr];
window.document.getElementById('calcul').value+=signeun[nbr];
window.document.getElementById('calc1').value +=signeun[nbr];
Calculdeux();
}

function Signedeux(){
nbr2 = Math.round(Math.random()*0); //mettre 1 si deux signe different etc..
signedeux = new Array(1) // mettre 2 si deux signe different
signedeux[0] ='+' // mettre 1 si il y a un deuxieme signe
window.document.getElementById('signe2').value=signedeux[nbr2];
window.document.getElementById('calcul').value+=signedeux[nbr2];
window.document.getElementById('calc2').value +=signedeux[nbr2];
Calculquatre();
}

function Calculdeux(){
chiffredeux = Math.round(Math.random()*10);
window.document.getElementById('chiffre2').value = chiffredeux;
window.document.getElementById('calcul').value +=chiffredeux;
window.document.getElementById('calc1').value +=chiffredeux;
somme1=eval(mental.calc1.value);
if(Math.round(somme1)!=somme1){alert('Calcul compliqué!!\nDivision trop longue...');
location.reload();}
else{
window.document.getElementById('inter1').value=somme1;
Reponse();
}
}

function Calculquatre(){
chiffrequatre = Math.round(Math.random()*10);
window.document.getElementById('chiffre4').value = chiffrequatre;
window.document.getElementById('calcul').value +=chiffrequatre;
window.document.getElementById('calc2').value +=chiffrequatre;
somme2=eval(mental.calc2.value);
if(Math.round(somme2)!=somme2){alert('Calcul compliqué!!\nDivision trop longue...');
location.reload();}
else{
window.document.getElementById('inter2').value=somme2;
Reponse2();
}
}

response = Math.round(result);
function Reponse(){
result = eval(mental.calcul.value);
if((result < 0)||(result>201)){alert('Calcul compliqué!!\nResultat négatif ou trop grand...');
location.reload();}
else{
window.document.getElementById('resultat').value=result;}
}

response2 = Math.round(result2);
function Reponse2(){
result2 = eval(mental.calcul.value);
if((result2 < 0)||(result2>201)){alert('Calcul compliqué!!\nResultat négatif ou trop grand...');
location.reload();}
else{
window.document.getElementById('resultat2').value=result2;}
}

function Valider(){
votreponse=mental.votresultat.value;
votreponse2=mental.votresultat.value;
if(votreponse==result)
{
alert('GENIAL!!!\nVOUS ETES FORT!!!');
$('.mental_form').submit(function() {
$.post('calcul.php', { c1: $('.mental_form input[name=c1]').val(),
s1: $('.mental_form input[name=s1]').val(),
c2: $('.mental_form input[name=c2]').val(),
votresultat: $('.mental_form input[name=votresultat]').val()
},
function(data){
if (data.result == 1){
$('.mental_form .resultatS').fadeIn('slow', function () {
$(this).delay(1000).fadeOut('slow');
});
} else {
$('.mental_form .resultatE').fadeIn('slow', function () {
$(this).delay(1000).fadeOut('slow');
});
}

}
);
return false;
});
document.getElementById("calcul").value = "";
chronoContinue();
Blitz();
}
else
{
alert('OUPS! Erreur de calcul!\nReéssayez...');
chronoContinue();
}
}


function Soluce(){
window.document.getElementById('vraireponse').value=result;
window.document.getElementById('validation').disabled=true;
}

function Soluce2(){
window.document.getElementById('vraireponse2').value=result2;
window.document.getElementById('validation').disabled=true;
}
[/javascript]

merci de m'éclairer