[Internet] Interdire retour page précédente

mt-2 Messages postés 15 Statut Membre -  
mt-2 Messages postés 15 Statut Membre -
Bonjour à tous,

Je me permets de créer un nouveau sujet car je n'ai pas trouvé exactement ce que je cherchais.

Je suis en train de créer un jeu de questions/réponses avec décompte du temps en PHP/Javascript. Le problème c'est que lorsque l'utilisateur revient à la page précédente, le décompte revient à 0 et il peut répondre à la question en perdant moins de temps.

Donc l'idée serait d'interdire le retour à la page précédente, sans forcément bloquer la navigation de manière intempestive, en mettant par exemple une sorte de timeout sur la page précédente qui dirait "cette page n'est plus disponible" lorsque l'on reviendrait dessus.

Est-ce possible ? Merci d'avance votre aide :)
A voir également:

3 réponses

Ssylvainsab Messages postés 2892 Statut Modérateur 825
 
Salut.

Interdire de revenir à la page précédente, ce n'est pas vraiment possible, il y a d'autres moyens de revenir à une page que d'utiliser le bouton "précédent".

A mon avis, la meilleure solution est d'enregistrer les adresses IP (en plus tu peux aussi utiliser ça pour identifier de manière unique chaque personne qui a répondu, et stocker les réponses avec) :
Quand quelqu'un arrive sur la première question, tu récupères son IP, et regarde si elle est déjà dans la table. Si oui, il a déjà fait cette série de questions, donc il ne peut pas les refaire et passe à la suivante (Voire : webmaster faire une redirection ), sinon il peut les faire et on stocke son IP dans la table.

Pour voir le temps qu'une personne a mis à faire les questions, utilise des champs de type DATETIME dans la table ou tu enregistres les réponses.

Il y a aussi le referer, mais c'est très facile à modifier donc déconseillé.
0
NiCoLaS
 
utilise les variables de session avec ce qu'a dit Ssylvainsab. Le pb avec l'ip c'est que pour les réseaux d'entreprise/d'école, les réseaux derriere routeur cela ne marche pas.
0
mt-2 Messages postés 15 Statut Membre
 
Merci de vos réponses !

Je pensais qu'il y aurait un moyen plus simple de faire ça mais je vois que non...
Bon bah y'a plus qu'à relever les manches et à se plonger dans le code. Au boulot ;)
0