Empecher écriture multiple dans base données

Fermé
Tapir - 14 févr. 2008 à 15:54
 Tapir - 14 févr. 2008 à 21:11
Bonjour,
J'ai fait un site avec un formulaire, et j'aimerais empecher l'utilisateur de revenir une page en arrière (dans l'historique) afin d'éviter que les mêmes données ne soient écrites plusieurs fois dans ma base.
Existe-il un moyen propre de faire ça?
Merci!!
A voir également:

11 réponses

Personne?
0
Bonne question! Je me suis toujours demandé... peut-être faire un SELECT et voir si ça te renvoie qqch? Mais ça me parait un peu compliqué... il doit surement y avoir plus simple... si qqn a une idée, je suis preneur!
Merci de vos réponses et merci à Tapir de sa question!
0
Eh bien... on ne peut pas dire que l'on se bouscule pour répondre... :-(
0
croy Messages postés 453 Date d'inscription samedi 19 janvier 2008 Statut Membre Dernière intervention 23 octobre 2012 114
14 févr. 2008 à 19:27
Bonjour,

Comment définis-tu "les mêmes données" ?

Si tu vux éviter qu'un même utilisateur écrive plusieurs messages, une idée serait d'utiliser un cookie.

Si le critère est dans les données elles-mêmes, une solution serait de définir un critère d'unicité dans ta table et de laisser mysql détecter le doublon (le retour de la fonction mysql_query permettra de signaler l'erreur à l'utilisateur).
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
masdmaah Messages postés 48 Date d'inscription samedi 26 janvier 2008 Statut Membre Dernière intervention 9 décembre 2016 2
14 févr. 2008 à 19:32
Bonsoir,

Si c'est un formulaire d'inscription, il suffit de mettre dans ta base de donnée un champs "UNIQUE" (pour le champs pseudo par exemple).
Si l'utilisateur revient sur la page et essaye d'entrer les mêmes données, la requête sera rejeté.

Je ne sais pas si je répond à ta question?
0
Tout d'abord, merci de vos réponses.
En fait, il s'agit d'un questionnaire pour un sondage. Je veux éviter qu'une même personne ne le fasse plusieurs fois. Est-il possible de définir un attribut UNIQUE sur deux champs ? (nom + prénom doivent être unique, mais il peut y avoir plusieurs fois le même nom ou le même prénom).
Merci encore.
0
croy Messages postés 453 Date d'inscription samedi 19 janvier 2008 Statut Membre Dernière intervention 23 octobre 2012 114
14 févr. 2008 à 20:01
Oui il est possible de positionner UNIQUE sur plusieurs champs.

Plusieurs personnes pouvant avoir les mêmes nom/prénom il me semble qu'il n'y a pas d'autres solutions que d'identifier les personnes par un pseudonyme en plus du nom et du prénom) et de mettre en unique le pseudo.
0
masdmaah Messages postés 48 Date d'inscription samedi 26 janvier 2008 Statut Membre Dernière intervention 9 décembre 2016 2
14 févr. 2008 à 20:07
tu peux mettre un champs UNIQUE dans ta base et le rempli avec "nom-prénom-age" tous collé.
ça te faire juste rajouter une colone dans ta base.
0
OK, donc pour résumer (je débute) j'ajoute simplement une colonne pseudo (par exemple) avec l'attribut unique à ma base, et ensuite MySQL détecte tout seul les doublons... c'est bien ça? Ou dois-je rajouter du code permettant de gérer ça?
Merci beaucoup de toutes vos indications!
0
masdmaah Messages postés 48 Date d'inscription samedi 26 janvier 2008 Statut Membre Dernière intervention 9 décembre 2016 2
14 févr. 2008 à 20:52
non pas de code a rajouter quand l'utiisateur essayra d'ajouter les meme info , si il essaye d'ajouter un pseudo deja existant , la requete sera refusée
0
Parfait!! Merci bcp!
0