Salut à tous,
j'aimerai mettre sur pied un système d'inscription après validation du mail un peu comme sur ce site http://www.grafikart.fr. du genre
un utilisateur entre les informations le concernant et après avoir validé qu'il soit redirigé vers sa boite mail ou il doit validé le lien d'enregistrement pour activé son compte.
mon soucis est que je n'arrive pas à savoir comment concevoir çela
Hello,
personnellement j'ai procédé comme ca :
Merci pour ton soutien mais j'ai unpeu quelque souçi comment faire pour générer un token ?
pour générer la valeur du token tu peux faire comme tu veux, il faut une string plus ou moins longue et unique de préférence ;)
j'ai fais comme ceci : unique_id + le mail de l'utilisateur hashé en md5, tu peux faire ce que tu veux à mon avis, un unique_id suffit je pense.
public function generate($mail = null)
{
if(!empty($mail))
{
// init : le token est vide
$token = '';
while($token == '')
{
// on créé une chaine unique
$token = String::uuid() . '-' . md5($mail);
// on charge le model Token dans le Component
$this->Token = ClassRegistry::init('Token');
// on regarde si se token est déja utilisé dans la bdd
$user_token = $this->Token->find('first', array(
'fields' => array('id'),
'conditions' => array(
'value' => $token
)
));
// si le token est utilisé alors on le vide et la boucle recommence pour en générer un nouveau
if(!empty($user_token))
{
$token = '';
}
}
return $token;
}
else
{
return false;
}
}
J'ai mis cette fonction dans un Component, car plusieurs models ont besoin de générer des tokens