Verrouillage varible d'entrée en javascript

Fermé
numters - 28 août 2012 à 20:40
Mihawk Messages postés 4315 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 - 29 août 2012 à 16:45
Bonjour,
J'ai écrit un mini programme en javascript. Voici en quoi il consiste: en gros il y a un calcul et l'utilisateur dois entrée une réponse. ensuite mon proramme dit si la réponse est juste ou fausse. Malheureusement si la réponse est fausse l'utilisateur peut facilement modifié la réponse. Voici donc ma question: comment vérouiller la réponse a partir du moment ou l'utilisateur a validé?

function test1()
			{	
				reponse1=parseInt(document.form1.reponse1.value);	
				
				if (resultat1==reponse1)																					
				{
					document.form1.texte.value="Bravo";		
				}
					else
					{
						document.form1.texte.value="1X1=1";		
					}
				
			}
----------------------------------------------------------------------------------------------------------------

resultat2=n2*nbre_2;			
		
			document.write("<FORM name='form2'>");
			document.write("<big>"+"<big>"+"2x1="+"</big>"+"</big>");
			document.write("<input type='text' name='reponse2'>");
			document.write("<INPUT type='button' name='calculer' value='ok' onClick='test2()'>"+"<br>");
			document.write("<input type='text' name='texte' readonly='readonly' size='30'></br></br>");
			document.write("</FORM>");


Merci d'avance !

A voir également:

4 réponses

Zep3k!GnO Messages postés 2025 Date d'inscription jeudi 22 septembre 2005 Statut Membre Dernière intervention 18 novembre 2015 200
29 août 2012 à 14:13
Passer ton input text en disabled ?
0
Mihawk Messages postés 4315 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 846
29 août 2012 à 14:15
Hello,

Pourquoi ne veux-tu pas que la réponse soit modifiable ?
Tu peux aussi utiliser une variable javascript globale afin de stocker le fait que sa première réponse était fausse.
0
document.form1.reponse2.disabled=true;
0
Idéophage Messages postés 43 Date d'inscription mardi 21 août 2012 Statut Membre Dernière intervention 23 novembre 2013 5
Modifié par Idéophage le 29/08/2012 à 15:15
L'utilisateur pourra toujours modifier la réponse, par exemple en exécutant un script "document.form1.reponse2.disabled=false;" (connaissais pas, merci Joe), ou au pire en enregistrant la page et en la modifiant. Si tu envoie la bonne réponse à l'utilisateur avec le formulaire, cet utilisateur pourra regarder dans le code source pour voir ce que vaut reponse1. "Never trust user input". Bon, après, l'utilisateur ne prendra pas forcément la peine de faire ça si ce n'est pas un truc important.

Idéalement, il faudrait envoyer la réponse de l'utilisateur au serveur, puis la garder en mémoire, si vraiment c'est important. Après, si c'est un simple questionnaire, rien n'empêche l'utilisateur de tester une fois pour avoir les bonnes réponses. Aucune contre-mesure pour ça...

edit : bon, ok, tout ça pour ne rien dire, désolé.
0
Zep3k!GnO Messages postés 2025 Date d'inscription jeudi 22 septembre 2005 Statut Membre Dernière intervention 18 novembre 2015 200
29 août 2012 à 15:37
edit : bon, ok, tout ça pour ne rien dire, désolé.
Le plus génial c'est que quelqu'un t'as quand même mis +1 ... !

Surtout quand le mec demande une solution en JS et non en ajax....
0
Mihawk Messages postés 4315 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 846
29 août 2012 à 15:38
En effet, Firebug permet aussi de lire le code JS de la page afin de lire la réponse dans la code ; ou encore de modifier le code HTML en direct pour rendre de nouveau accessible la zone en question.
0
Idéophage Messages postés 43 Date d'inscription mardi 21 août 2012 Statut Membre Dernière intervention 23 novembre 2013 5
29 août 2012 à 16:39
Oui, mais pas besoin de Firebug pour lire le JS (et pour exécuter une instruction, le pensais surtout à entrer dans la barre d'adresse). Par contre, pour voir et éditer le HTML, même modifié par le JS, je connaissais pas. Y'a bien une ou deux fois où ça m'aurait été utile, merci de l'info. Mais tout cela n'a franchement aucun intérêt. Généralement, pour faire un QCM, c'est pour se tester, et puis les réponses ne sont probablement pas enregistrées. Bref.

PS : 'faudrait que quelqu'un me mette -1, pour que je n'apparaisse pas en premier quand c'est classé par vote...
0
Mihawk Messages postés 4315 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 846
29 août 2012 à 16:45
Rétabli.
0