Bonjour à tous, je suis actuellement en train de réaliser un espace privé. Travaillant depuis une base de données que l'on m'as données, je dois créer un système de login et mot de passe à partir d'une table prédéfinie.
Mon soucis viens du fait que au lieu de travailler avec username, password, je travail avec lemail et password.
Comment configurer la fonction login de Auth pour qu'il contrôle uniquement ces deux champs et nom username et password, voici mon code dans mon contrôleur actuellement.
Controller
function login(){
if($this->request->is('post')){
if($this->Auth->login()){
return $this->redirect($this->Auth->redirect());
}else{
$this->Session->setFlash("Votre login ou votre mot de passe ne correspond pas","notif",array('type'=>'error'));
}
}
}
Vue login.ctp
<div class="span16">
<h4>Se connecter</h4>
<?php echo $this->Form->create('Prospect'); ?>
<?php echo $this->Form->input('lemail',array('label'=>"Login")); ?>
<?php echo $this->Form->input('lpassword',array('label'=>"Mot de passe",'type'=>'password')); ?>
<?php echo $this->Form->end('Se connecter'); ?>
</div>
Merci d'avance pour vos réponse, je continue de travailler dessus, je vous tiens au courant si j'ai une solution.
Lepetitnico
dans login.ctp t'as essayé ?
<div class="span16">
<h4>Se connecter</h4>
<?php echo $this->Form->create('Prospect'); ?>
<?php echo $this->Form->input('username',array('label'=>"Login")); ?>
<?php echo $this->Form->input('password',array('label'=>"Mot de passe",'type'=>'password')); ?>
<?php echo $this->Form->end('Se connecter'); ?>
</div>
et dans l'appcontroller :
public $components = array(
'Auth' => array(
'authenticate' => array(
'Form' => array(
'fields' => array('username' => 'lemail', 'password'=>'lpassword')
)
)
)
);
Salut !
Tu dois configurer le composant Auth dans ton AppController :
<?php
// Pass settings in $components array
public $components = array(
'Auth' => array(
'authenticate' => array(
'Form' => array(
'fields' => array('username' => 'email')
)
)
)
);
http://book.cakephp.org/2.0/en/core-libraries/components/authentication.html
j'ai déjà vu cette possibilité mais sa ne règle pas mon problème, je cherche toujours d'ou peux provenir l'erreur car quand je fais login il me dit toujours false.