Inscription / login

Mammouth du PHP | 19672 Messages

23 févr. 2006, 22:41

J'ai l'impression que tu as lu mes réponses en diagonale :-k

Si tu suis ma suggestion en détail, essaye de m'expliquer comment tu ferais pour aller sur la page d'activation sans passer par l'adresse du courriel ?

Pour récupérer les paramètres envoyés avec l'url, tu les auras dans la super-globale $_GET au chargement de la page. En fait, je ne comprends pas ce que tu ne comprends pas...
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Mammouth du PHP | 965 Messages

23 févr. 2006, 22:43

ben en fait sa j'ai compris :D

mais moi le ptit malin qui sais que le lien de validation est : validinscription.php et qui veux me faire chier vas faire un lien direct avec son pseudo et plein d'email et pseudo bidon et surchargé la base de donnée.

Donc en fait ouais je pourrais ne pas me prendre la tête du tou, c'est a dire valider l'inscription cash a ce moment la sans passer par l'email, mais j'veux un peu plus de securité je sais c'est ptet un poil parano mais je préfère.

Et surtout sa fais plus classe :D

Mammouth du PHP | 19672 Messages

23 févr. 2006, 22:53

Je t'explique un truc simple comme bonjour et visiblement tu cherches midi à quatorze heures : respire donc un grand coup et relis l'explication détaillée que j'ai suggérée.
  1. l'internaute remplit un formulaire d'inscription avec un certain nombre d'informations;
  2. Lors de la validation, tu enregistres ces informations et tu envoies un courriel d'activation avec un lien créé comme expliqué plus tôt;
  3. L'internaute reçoit ce courriel : il n'a aucun moyen de savoir comment a été générée la chaine hachée, ça, tu ne le révèle bien entendu à personne. J'ai suggéré pseudo+nom+prénom, tu peux utiliser autre chose du moment que ce sont des informations qui sont obligatoirement déjà dans la base;
  4. L'internaute clique sur le lien :
    • ton script d'activation récupère les paramètres pour initialiser des variables $pseudo et $cle;
    • Avec le pseudo, tu récupères avec une requête SQL les informations nécessaires pour reconstruire la chaine pseudo+nom+prenom
    • Avec ces informations, tu crées une chaine hachée que tu compares avec le second paramètre récupéré $cle : si ça correspond, c'est valide, sinon, c'est une tentative d'activation frauduleuse
  5. Selon le résultat, tu affiches le message de succès ou d'échec de la procédure d'activation.
Est-ce que tu visualises mieux le schéma maintenant ?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Mammouth du PHP | 965 Messages

23 févr. 2006, 22:57

ok je vois maintenant en fait c'est juste pour recreer la chaine que je comprenais pas trop et que je voulais dons stocker sa en memoire, je comprends qu'en effet sa ne fais que surchargé ma base !

en fait oui la comme sa c'est très clair Cyrano je te remerci encore une fois pour toute ces explications je met sa en place demain et si sa fonctionne ce sera super, je te dis un gros merci encore une fois !

Eléphant du PHP | 52 Messages

23 févr. 2006, 22:58

la chaine en md5 que tu as mise est uniquement le md5 du pseudo. Il te faut ajouter un morceau supplémentaire (quelques mots en plus, des chiffres, ce que tu veux !) que seul toi connais, et qui sera toujours le même, sinon le gars n'aura qu'à chercher le md5 de son pseudo et aura la clé ..

ainsi, sur la page validinscription.php, il te faudra faire une comparaison avec le clé envoyée et la reformation de la chaine en md5 à partir du pseudo envoyé.

Exemple :

dans la page dont tu as posté le code :
$chaine_hachee = md5('zernk'.$_POST['pseudo'].'15ghje*');

dans la page qui va vérifier l'activation, validinscription.php, tu devras vérifier ainsi :
$chaine_hachee = md5('zernk'.$_GET['pseudo'].'15ghje*');

if ($chaine_hachee == $_GET['cle'])
{
//ici activation du compte
}

Mammouth du PHP | 19672 Messages

23 févr. 2006, 23:00

Patami, relis donc ce que j'ai expliqué :-"
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Mammouth du PHP | 965 Messages

23 févr. 2006, 23:01

rien en fait :roll:

Eléphant du PHP | 52 Messages

23 févr. 2006, 23:38

encore une fois cyrano, tu fus plus rapide à poster, je n'ai pas eu l'occasion de lire ton post explicatif alors que j'étais entrain de rédiger mon propre post :p va falloir m'entraîner à réfléchir/écrire plus vite ^^