|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
Bonjour,
j'ai actuellement un formulaire html qui permet une inscription, puis qui envoie un mail pour valider l'inscription ; l'utilisateur doit cliquer sur le lien du mail pour valider l'inscription. Donc, quand il clique, ça lance une requête vers MySQL qui est censée mettre à 1 un champ "valide". Mais évidemment, je ne voudrais le faire que pour cet utilisateur ; il existe bien un champ "pseudo", mais quand l'utilisateur clique, la page appelée n'a pas cette information : comment faire ? |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() Inscription : novembre 2006 Messages : 1 402 ![]() |
Bonjour,
La méthode "classique" consisterait à générer un token aléatoire (jeton) stockée dans la BDD lors de l'inscription de l'utilisateur et de passer celui-ci en paramètre de la page de validation. Une fois la validation effectuée, on pourra supprimer le token de la BDD Ainsi tu n'as pas besoin de transmettre le pseudo de l'utilisateur, et on a juste un token aléatoire à envoyer
__________________
Toute question technique envoyée en MP ira directement à la poubelle ![]() Un code ne marchera jamais,il n'a jamais reçu la capacité de se déplacer. Inutile donc de dire "ça marche pas", donnez plûtot des informations précises afin de mieux pouvoir vous aider. ![]() Grand gourou de la -attitude - Sauvons Internet!
|
|
|
00
|
|
|
#3 | ||
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
J'ai opté pour une méthode non-classique (en fait la continuité de mon idée), mais ça coince et je ne comprends pas pourquoi ; de la page "action" du formulaire d'inscription, on connaît le pseudo (il vient d'être saisi) ; comme l'envoi du mail doit se faire depuis un autre serveur (apparemment, l'envoi de mail est impossible chez Free (du moins pour moi)), j'envois toutes les infos pour faire ce mail à l'autre serveur via une iframe :
Code :
<iframe frameborder=0 src="http://---/mail.php?dest=<?=$destinataire?>&sujet=<?=$Subject?>&pseudo=<?=$pseudo?>&message=<?=$mail_texte?>&url=<?=$mail_URL?>&em=<?=$mailemetteur?>" ></iframe> Code :
|
||
|
|
00
|
|
|
#4 |
|
Membre éclairé
![]() ![]() Webmaster Inscription : septembre 2007 Messages : 376 ![]() |
Salut
Alors avant de continuer dans ta méthode, autant t'annoncer que ta méthode perd tout l'intéret de base, c'est à dire vérifier la validité de l'email. En effet, si il suffit du pseudo pour valider une inscription, une fois la page cible repérée, rien ne m'empêche de m'inscrire avec une adresse bidon et de ne pas me servir du lien dans le mail pour activer mon compte La méthode de supersnail est donc bien meilleure. Quand tu insères ton membre en BDD, tu lui génères une clé (token) unique. et c'est cette clé que tu envoies dans ton mail Ainsi, sur ta page de vérification, tu cherches le membre qui a la clé passée en paramètre et tu le passes en actif (penses à supprimer la clé au passage) Ainsi, il est impossible de bypasser ton système de vérification
|
|
00
|
|
|
#5 |
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
OK, compris ; donc j'essaye de suivre ton conseil, puis j'en rendrai compte ici (ce soir ou demain)
|
|
|
00
|
|
|
#6 |
|
Membre éclairé
![]() ![]() Webmaster Inscription : septembre 2007 Messages : 376 ![]() |
|
|
00
|
|
|
#7 |
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
Ca y est ; c'est au point (01h du matin passé...)(c'est pas fini, mais l'inscription est validée par un mail ; pour le jeton : rand(0,1000000) ; ça va ?).
|
|
|
00
|
|
|
#8 | |
|
Membre éclairé
![]() ![]() Webmaster Inscription : septembre 2007 Messages : 376 ![]() |
Citation:
Au niveau du token, j'ai pris l'habitude de mélanger des chiffres et des lettres, mais bon après chacun fois midi à sa porte
|
|
|
00
|
|
|
#9 | |
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
Citation:
|
|
|
|
00
|
|
|
#11 | |
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
OK, merci pour la fonction ; et dans mysql, j'avais jeton int ;
jeton varchar(13), ça irait mieux ? Citation:
|
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com