Page 1 sur 1

validation multiple d'un formulaire

Posté : 07 mai 2007, 09:50
par dread
Bonjour à tous!!
J'espère qu'il reste du monde sur le forum. Ceux qui comme moi ne font pas le pont!!
J'ai une question concernant la multiple validation de formulaire ayant pour but l'insertion de données dans une bd.
Je souhaiterais empecher le fait de revenir en arrière quand un formulaire d'insertion à été valider pour empecher les multiples validations et par conséquent les doublons dans la bd.
Est-ce que certains d'entre vous ont déjà mis en place ce type d'action? J'ai vu sur internet qu'on pouvait mettre un champ de type hidden avec un unique identifiant par formulaire mais sans être vraiment explicatif de la méthode à suivre.
Toutefois si d'autres méthodes éprouvées avaient fait leur preuve je suis preneur.
De mon côté, je continue de chercher.
Merci par avance.

Posté : 07 mai 2007, 10:50
par thehawk
tu peux utiliser du javascript , un script qui va changer le bouton de validation afin d'eviter les double clique etc ...

lelien : http://www.editeurjavascript.com/script ... s_2_17.php

Posté : 07 mai 2007, 11:05
par dread
ok je vais creusé dans ce sens.
Merci pour ta réponse.
Au passage, je planche sur un autre soucis. Est-ce que tu aurais une idée pour limiter les tentatives d'authentification sur un formulaire d'identification avec login et mot de passe. Genre, au bout de 10 tentatives se soldant par un echec, le visiteur est redirigé vers une autre page avec pourquoi pas impossibilité de retenter avant un labs de temps.

Posté : 07 mai 2007, 11:16
par thehawk
créer une table dans ta base de données avec comme champ l'ip et le nombre de tentative qu tu incremente puis des qu'il s'est logguer tu la vide et sinon tu bloque ^^ , en suite une autre champ avec timestamp pour savoir le temps de blocage une fois le temps depasser tu la vide ^^

@+ thehawk

Sécuriser processus d'identification

Posté : 07 mai 2007, 17:42
par dread
J'ai effectué quelques petites recherches en ce qui concerne le blocage des tentatives d'identification erronées.
Il en résulte que bloquer sur un nombre d'essai n'est pas la bonne solution face au "bruteforcing". Par contre allongé le temps entre deux essai de facon exponentielle semble l'être.
J'ai donc trouvé ceci mais j'ai l'impression que le code est incomplet notamment sur le renseignement de la variable $temp et sur le fait de ne bloquer que l'IP.
Je vous met le code trouvé:
//Récupérer l'IP d'un visiteur
$ip = $_SERVER["REMOTE_ADDR"];
//Temporiser
//recupere($temps);

sleep($temps);

$temps = $temps * 2;

//stocke($temps);
De plus je ne sais pas vraiment où mettre ce code et s'il est donc complet.
Je m'en remet à ceux qui aurait un avis plus éclairé que le mien sur ce sujet bien que la méthode d'augmenter le temps entre chaque tentative me plait assez.
Là encore je reste ouvert à d'autres suggestions.

Posté : 07 mai 2007, 17:55
par thehawk
Au niveau de ta variable temps il fait initialiser quelque par ... imagine le pauvre type qui a rien avoir avec brutforcer qui se retrouve avec 500 h de chargement . ET puis dans le cas ou tu affaire a un bruteforcer le sleep n'est pas top en effet cela ouvre une requete qui ne se terminera a terme jamais donc ce qui entraine un bug du serveur donc tons site ...

Personnellement je pense que c'est une mauvaise approche, je trouve plus probant le blocage de l'ip avec un timestamp pour gerer le temps "où il n'a pas le droit de ce connecter"