Iterdir le rafraîchissement de la page (F5)

EonyAewati
Invité n'ayant pas de compte PHPfrance

29 mars 2010, 19:47

Bonjour les PHPEurs !

J'ai une doute, je veux interdire l'utilisation de la fonction "Rafraîchir page" (F5) dans mon site, comment faire?

Merci d'avance ! :D

devlop78
Invité n'ayant pas de compte PHPfrance

29 mars 2010, 19:50

Tu es liberticide ?

Invité
Invité n'ayant pas de compte PHPfrance

29 mars 2010, 19:53

Tu es liberticide ?
Non, tout simplemente j'ai une boutique où il y a des trucs gratos (C'est du mobilier virtuel pour un jeu) et n'importe qui peut cliquer sur 'acheter', il voit le lien http://www.monsite.com/acheter.php?id=9 et puis simplement il revient pas en arrière, il fait juste rafraîchir tout le temps et il achète tout :D

Mammouth du PHP | 985 Messages

29 mars 2010, 20:01

On utilise souvent la redirection pour empêcher ceci.
L'utilisateur post le formulaire et ensuite il est redirigé vers une autre page.
Face à la roche, le ruisseau l'emporte toujours, non pas par la force mais par la persévérance.

devlop78
Invité n'ayant pas de compte PHPfrance

29 mars 2010, 20:01

Si tes articles ont des id indépendants de leur position dans la page (comme les clés primaires de bdd lol), pas de soucis ... ce n'est pas à toi d'empêcher au visiteur de faire F5 mais à toi de modifier le code de ta page.

Invité
Invité n'ayant pas de compte PHPfrance

29 mars 2010, 20:04

Si tes articles ont des id indépendants de leur position dans la page (comme les clés primaires de bdd lol), pas de soucis ... ce n'est pas à toi d'empêcher au visiteur de faire F5 mais à toi de modifier le code de ta page.
Merci ! Je crois que c'est ce que je vais faire.

devlop78
Invité n'ayant pas de compte PHPfrance

29 mars 2010, 20:16

Ouai ... enfin quand je dis indépendant de machin, non c'est pas vrai. Juste que un article doit posséder un id, et qu'un id ne doit être attribué qu'à un seul article. Ainsi tu auras plutot quelque chose comme ?id=859 (859 est par exemple la clé primaire dans ta bdd, ou je sais pas un md5!). Tu peux aussi corser les choses pour éviter à l'utilisateur d'avoir des choses gratuites alors qu'il n'en a pas la liste, avec justement un cryptage de l'id ou un algorithme, etc ... après tu peux aussi le limiter à x articles gratuits, et/ou à x articles gratuits par tranche de 1 heure etc ...

ViPHP
AB
ViPHP | 5818 Messages

29 mars 2010, 20:59

Sur le principe je compterais le nombre d'articles gratuits. Et si ça dépasse le quota (ou un montant) maximum, le code qui enregistre les articles gratuits est "déconnecté", et un message d'erreur est affiché. Peut se faire assez facilement avec des variables de sessions.

EDIT dans tous les cas le principe n'est pas d'interdire le rafraichissement de la page mais bien que ton code fonctionne même en cas de rafraichissement de la page.