Protéger un formulaire contre les multis-comptes

Protéger un formulaire contre les multis-comptes - HTML/CSS - Programmation

Marsh Posté le 14-01-2003 à 03:14:10    

Hello,
 
Je viens de faire un formulaire tout bête avec les balises form et il est envoyé via le cgi form2mail.
 
Cependant je souhaiterai protéger ce formulaire de façon ce que la même personne ne puisse pas y répondre 2 fois de suite.
 
Quels sont les moyens possibles ? Cookies (comment faire), Javascript (apparement le cgi prend le dessus :().
 
Bref je ne trouve pas de moyen simple pour empecher de répondre plusieurs fois.
 
Merci d'avance.


---------------
Les wagons de ta connerie roulent sur les rails de mon indifférence.
Reply

Marsh Posté le 14-01-2003 à 03:14:10   

Reply

Marsh Posté le 14-01-2003 à 05:03:28    

Moi je dirai :
 
-Cookie enregistrant le nombre defois que le hars a repondu. Si le cookie est rpesent : DSC .
 
-Petite base de donnees enregistrant le temps ecoule entre deux adresses IPs differentes remplissant le meme formulaire. Si meme ip en moins de 24h : DSC pas possib. La possibilite de deux personnes avec la meme IP en 24h ( dynamique ) sur ton formulaire etant plus qu'anecdotique.
 
-encore plus fendart, tu piques l'IP, tu attrappes le host, et si y a le mot proxy dedans => DSC :D La c'est si t'es vraiment parano.
 
COmment faire, je sais pas. Quoi faire, je peux t'aider ;)

Reply

Marsh Posté le 14-01-2003 à 21:26:45    

Merci tetedeiench,
 
J'avais effectivement bien pensé au cookie qui me semble relativement viable pour la majorité des mortels qui utiliseront le formulaire.
 
Mais tout comme toi je bloque sur la mise en oeuvre  :D


---------------
Les wagons de ta connerie roulent sur les rails de mon indifférence.
Reply

Marsh Posté le 15-01-2003 à 00:43:36    

A cela il faut aussi mémoriser le dernier message reçu pour le comparer au message actuel pour empêcher le mec d'envoyer plein de fois la même requête.
 
 :D

Reply

Marsh Posté le 16-01-2003 à 02:26:07    

Bon et bien en cherchant partout et en se creusant un peu la cervelle j'ai fini par réussir.
 
Si ça peut servir à d'autre :
 
Au départ j'avais donc un formulaire dans une page html.
Ce formulaire est traité par un cgi qui en plus renvoi vers une page de remerciement une fois validé.
 
Donc le truc c'est d'utiliser le php :
 
Dans la page remerciement.html on va créer le cookie :
 
<?php
setcookie("lenomducookie", "savaleur", time()+3600*24*30, "/lerepduformulaire", ".mondomain.com",0);
?>
 
 
Ce qui fait que lorsque la personne après avoir voter arrivera sur la page de remerciement le cookie "lenomducookie" sera créer sur son dur.
On enregistre remerciement.html en remerciement.php
 
Ensuite dans la page formulaire.html on met le code qui va lire si oui ou non le cookie est présent :
 
<?php
$lenomducookie = $_COOKIE["lenomducookie"];
 
if($lenomducookie)
 
{
header("location:lapageluidisantquecpaslapeine.html" );
}
 
?>
 
On enregistre formulaire.html en formulaire.php
 
Donc notre visiteur vient de voter et désormais le cookie est sur son dur.
En retournant sur la page formulaire.php le serveur trouve le cookie et redirige notre bon monsieur vers la page "lapageluidisantquecpaslapeine.html".
 
 
Ca parait tout con mais j'ai cherché depuis 3 jours comment réussir  :whistle:  
 
Biensur il suffit d'effacer le cookie "lenomducookie" dans le rep cookie pour pouvoir voter à nouveu mais pour la plupart des gens c suffisamment décourageant  :D  
 


---------------
Les wagons de ta connerie roulent sur les rails de mon indifférence.
Reply

Marsh Posté le 16-01-2003 à 03:01:35    

C'est passionnant, mais tetedeiench te l'avait déjà dit... ;)

Reply

Marsh Posté le 16-01-2003 à 19:24:13    

Hermes le Messager a écrit :

C'est passionnant, mais tetedeiench te l'avait déjà dit... ;)
 


 
Heu si j'ai mis ce dernier post c au cas où qq'un chercherait la même chose donc même si ça ne te passionne pas ça pourra surement en passionner d'autres  :sarcastic:  
 


---------------
Les wagons de ta connerie roulent sur les rails de mon indifférence.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed