Sécurisé un petit jeu en php

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 : Sécurisé un petit jeu en php

par dogmongo » 06 oct. 2008, 23:30

je me suis mal expliqué mais tu as compris mon objectif :wink:

par Berzemus » 06 oct. 2008, 22:49

c'est du php :wink:
Ouh ouh, la vilaine désinformation..

Non, ajax n'est pas du php. C'est du javacript, qui permet d'aller chercher, de façon asynchrone, l'un ou l'autre contenu sur un serveur. Stou. Après, ce qui tourne sur cet autre serveur, ajax s'en fout. Mais ça peut parfaitement être du php, ça oui, c'est sur.

par dogmongo » 06 oct. 2008, 21:17

je te montre un exemple :wink:

ta page de base
form_question.php
<html>
<head>
<title>question réponse</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<script type='text/JavaScript'>
function getXhr(){
var xhr = null; 
if(window.XMLHttpRequest) 
xhr = new XMLHttpRequest(); 
else if(window.ActiveXObject){ 
try {
xhr = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
}
else { 
alert("Votre navigateur ne supporte pas le javascripts"); 
xhr = false; 
} 
return xhr
}
</script>

<script language="JavaScript" type="text/JavaScript">

function prochaine_question(question_num){
var xhr = getXhr()
xhr.onreadystatechange = function(){
if(xhr.readyState == 4 && xhr.status == 200){
leselect = xhr.responseText;

document.getElementById('ecran').innerHTML = leselect;
}
}
xhr.open("POST","affiche_question.php",true);
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');			

var question_num; 

xhr.send("question_num="+question_num);			
}
</script>	
<body>

<div id="ecran">
<form name="form" method="post" action="">
Quelle heure est il ?<br><br>
<img src="v" width="176" height="32"  onclick="prochaine_question('0')" > 
</form>
</div>

</body>
</html>
et voici la page qui va traiter les nouvelles questions
affiche_question.php
<?php 
header('Content-Type: text/html; charset=ISO-8859-1');

echo "Vous avez répondu à la question $question_num";

$question_suivante = $question_num + 1;

$newquestion[1] = "quelle voiture avez vous ?";
$newquestion[2] = "tu connais phpfrance ?";

echo "<form name='form1' method='post'>
$newquestion[$question_suivante]<br><br>
<img src='' width='176' height='32' onclick='prochaine_question($question_suivante)' > 
</form>";

?>
la page de base à une fonction ajax qui va envoyer le numéro de la question actuelle
la page de traitement des prochaines question va retourner les nouvelles questions sans aucun rafraichissement de page, puisque elle va refaire ton formulaire sans recharger ton navigateur

après il ne te reste plus cas arranger ca à ta sauce :wink:

par djtec » 06 oct. 2008, 21:11

Si tu utilise la fonction rand() pour afficher tes questions tu peux connaitre le chiffre de la question d'après.

Montre nous ton code ça sera plus simple pour t'aider.

par angebleu17 » 06 oct. 2008, 20:53

mais en fait les questions s'affiche de maniére aléatoire, donc impossible de connaitre la prochaine question.

par dogmongo » 06 oct. 2008, 20:49

c'est du php :wink:

La page de base appelle une page avec traitement des prochaines questions, de ce fais aucun page ne reste dans l'historique et une simple session sur la page active ferait agrémente une variable session et pourrait servir de déclanchement fin de teste, une session pourrait aussi servir à indiquer à quelle question l'internaute se trouve :)

par angebleu17 » 06 oct. 2008, 20:34

je ne connais pas ajax, c'est possible de le faire en php non ?

par dogmongo » 06 oct. 2008, 20:16

utilise ajax ;)

Sécurisé un petit jeu en php

par angebleu17 » 06 oct. 2008, 19:12

Bonjour,

Je suis en train de faire un petit jeu en php qui conssiste à l'internaute de répondre a plusieurs questions.
Par exemple une question s'affiche, l'internaute répond et valide, une nouvelle question arrive...etc

Je me pose des questions sur la "sécurité" du jeu car si la personne fait précédent il retournera a la question précédente, comment faire pour éviter cela ? avec les sessions ?

De plus si on rafraichit la page, cela affiche une nouvelle question, comment faire pour que la question reste là même lorsque l'internaute rafraichit la page ?

Merci d'avance