Bonjour,

Depuis plusieurs jours, je tente de mettre en place une connexion basique, mais sans succès... j'ai parcouru de nombreux forum et tuto, sans succès le problème persiste.
A savoir que le code ci-dessous est identique à une autre application qui elle marche parfaitement !

Dans les 2 applications, la même version de CakePHP est utilisé, la 2.8

AppController

class AppController extends Controller {
    public $components = array(
        'Session','Flash','Auth' => array(
            'authenticate' => array(
                'Form' => array(
                    'passwordHasher' => array(
                        'className' => 'Simple',
                        'hashType'  => 'sha256'
                    ),
                    'scope' => array('User.active'    => 1),
                    'fields'    => array('username' => 'email')
                )
            )
        )
    );

    public function beforeFilter() {
        parent::beforeFilter();
        $this->Auth->allow();
    }

UsersController

class UsersController extends AppController {
public function login()
    {
       if($this->request->is('ajax'))
       {
           if($this->Auth->login())
           {
                echo 'ok';
           } else {
               echo "KO";
           }
       }

    }
}    

Le problème pourrais-il venir de l'utilisation d'ajax pour la connexion ?

Merci !

3 réponses


Une fois tentée ta connexion en ajax, quand tu réactualise ta page tu n'es pas logué ?
Je pense qu'au lieu d'un echo tu devrais utiliser un return et si tu fais un console.log dans le success de ta requête ajax, tu devrais avoir le résultat.

Darkh62
Auteur

Une fois tentée ta connexion en ajax, quand tu réactualise ta page tu n'es pas logué ?

Non je n'était pas logué vu que le code me renvoyer "KO" systèmatiquement.

J'ai réussi à trouver le problème, ça ne viens pas du php mais du Formulaire... Apparament il ne me prend pas en compte le "name" que j'ai défini...

en ajax le cookie de session n'est pas envoyé il me semble