2010-05-05 5 views
0

J'ai créé un code appelé LoginController. Chaque fois que Admin est connecté avec succès, je redirige la page à index.Erreur après la redirection en utilisant CakePHP

Cependant, j'ai eu une erreur comme "problème sur la page de chargement".

Ceci est mon code:

<?php 
class LoginController extends AdminAppController { 
var $name = 'Login'; 
var $uses = array('Admin.Login'); 
var $sessionkey= ''; 
/*function beforeFilter() 
{ 

    if($this->Session->read('user')=='Admin' || $this->params['action']=='login') 
    { 
     echo "in"; exit; 
    } 
    else 
    { 
     echo "else"; exit; 
     $this->Session->setFlash('Login first','flash_failure'); 
     $this->redirect(array('action'=>'login')); 

    } 
}*/ 

function index() { 


} 

function login() 
{ 
    //pr($this->data); exit; 

    if(!empty($this->data)) 
    { 
     $results = $this->Login->findByEmail($this->data['Login']['email']); 
     if(!empty($results) && $results['Login']['password']== md5($this->data['Login']['password'])) 
     { 

      $this->Session->write('user', 'Admin'); 

      $results['Login']['last_login']=date("Y-m-d H:i:s"); 
      $this->Login->save($results); 
      $this->Session->setFlash('Login successfully.', 'flash_success'); 
      $this->redirect(array('controller'=>'login','action' => 'index')); 



     } 

    } 
} 
} 
?> 

Quelqu'un peut-il me aider? Merci.

+0

N'est-il pas préférable d'enregistrer des rôles dans votre base de données pour pouvoir disposer de plusieurs administrateurs? –

+0

En outre, c'est peut-être une bonne idée de publier l'erreur complète. Je sais que vous êtes nouveau ici, mais fournissez toujours autant d'informations que possible. –

+0

J'utiliserais le composant Auth plutôt que d'essayer de créer un système de connexion complet. –

Répondre

0

J'ai eu votre problème. IT va dans la boucle infinie.AND c'est pourquoi vous avez dans l'erreur de chargement de la page.

Comme vous n'avez pas fait la distinction entre le login admin et le login client, vous rencontrez ce problème.

Donc, ma suggestion est que créer de nouvelles même fonction avec le nom diff appelé comme login admin

et définissez le routeur pour la connexion admin. salutations, ARCHIT.

Questions connexes