2009-09-24 7 views
3

J'utilise le formulaire d'inscription pour les différents utilisateurs? Après la connexion d'un nouvel utilisateur, les utilisateurs enregistrés doivent rediriger vers une page d'après-connexion. Nous utilisons le composant Auth pour l'authentification.Connexion automatique dans CakePHP

Comment faire?

Répondre

0

Je ne suis pas sûr de savoir quelle est la question, mais il semble que vous vous demandiez comment envoyer un utilisateur quelque part après une connexion réussie. Si c'est exact, essayez ceci:

$this->Auth->loginAction = array (
    'controller' => 'whichever_controller', 
    'action'  => 'desired_action', 
    'admin'  => true 
); 

La clé admin peut ne pas être nécessaire si vous n'êtes pas accéder /admin/whichever_controller/desired_action.

0

Vous devrez appeler manuellement la méthode de connexion à partir de votre action de registre.

Enregistrer le nom d'utilisateur + mot de passe non hachés dans un tableau, puis l'appeler de la méthode après la sauvegarde comme ceci:

$data = array('username' => 'user', 'password' => $unhashedPw); 
$this->User->login($data); 
6

Si vous souhaitez que l'utilisateur connexion automatique après l'enregistrement, vous pouvez utiliser la connexion de AuthComponent() méthode.

if ($this->User->save($this->data)) { 
    $this->Auth->login($this->data); 
} 
+0

La fonction de connexion de l'authentification ne permet pas automatiquement d'appeler manuellement la fonction hashPassword si vous souhaitez utiliser une fonction de mot de passe autre que celle intégrée. – coolkid

3

Sur les nouveaux gâteaux, il vous suffit d'ajouter

$this->Auth->login(); 

après avoir ajouté l'utilisateur dans la base de données.

Questions connexes