Bonjour à vous,

j'ai un petit problème, j'ai suivi le tuto afin de créer le module facebook connect, tout fonctionne bien, jusqu'au moment ou on doit démarrer la session.

Je n'ai aucune session quand on passe par ce module.

Comme la préconisé Grafikart j'ai modifié le fichier facebook.php afin de supprimer les 3 lignes, mais là j'ai un message d'erreur.

Comment je peux faire pour pouvoir installer ce module de connection?

Merci à vous tous pour votre aide.

5 réponses


TraxX
Auteur
Réponse acceptée

C'est bon j'ai trouvé la réponse à ma question. C'est dans les commentaires du tutos....

Merci à toi de ton aide.

c'est quoi le message d'erreur?

TraxX
Auteur

Déjà merci à toi de me répondre.
Alors voilà quand je supprime le code suivant du fichier : facebook.php

if (!session_id()) {
    session_start();
}

J'ai cette erreur :

Notice (8): Undefined variable: _SESSION [APP/Lib/Facebook/facebook.php, line 128]
Notice (8): Undefined variable: _SESSION [APP/Lib/Facebook/facebook.php, line 128]
Notice (8): Undefined variable: _SESSION [APP/Lib/Facebook/facebook.php, line 128]
Notice (8): Undefined variable: _SESSION [APP/Lib/Facebook/facebook.php, line 128]

Voilà le debug quand j'ai cliqué sur : se connecter via facebook:

array(
    'fb_134422920054259_user_id' => '757010711',
    'fb_134422920054259_state' => 'f091c43259999eb4de29c293a6b7cdf4',
    'fb_134422920054259_code' => 'AQBXDBMag05SqJ1Hb1FkCNAnT5TQIoGihiCpZ7Ru0YkMeM3TdDn1Kig4q4frS8jSsp61TxHSBWGKeXcDLicHA8lbp4EYWaa8PsRaDbcLTYasvSisQIqF9juoxaKetHsr7SZu2YuYyKsHXyerbI9HHdmgoqn-QYDz6YKBtnwo0ZJNbVX3wklFRjOuaxXi5dpFZdNcAkLiCkzNfb8FSJxumaC-',
    'fb_134422920054259_access_token' => 'AAAB6QcZAmRfMBAK0IcE3Ht1jszeeesZCdElZA1GxuYY8yQoLZCd5d3PG6tg2F2YndE39d1eSZAoGbmNcsyARW0hlIWVNhAgvDJunh0Dl9NAZDZD',
    'Message' => array(),
    'Auth' => array(
        'User' => array(
            'password' => ' *****',
            'id' => '85',
            'username' => 'yo',
            'email' => 'cbilger67@gmail.com',
            'role' => 'membre',
            'created' => '2013-01-17 17:48:59',
            'lastlogin' => '0000-00-00 00:00:00',
            'active' => '0',
            'firstname' => 'Bilger',
            'lastname' => 'Christophe',
            'facebook_id' => '757010711'
        )
    )
)

Et quand je redirige vers l'accueil du site j'ai plus rien :

array(
    'Config' => array(
        'userAgent' => '3b78b6079caddc4cd1a9a2c0420cd084',
        'time' => (int) 1358456003,
        'countdown' => (int) 10
    ),
    'Auth' => array(
        'redirect' => '/page/accueil-1'
    ),
    'Message' => array()
)

Et la partie de mon code de userController.php (redirection) :

if ($this->request->is('post')) {
                    $data = $this->request->data'User'];
                    $d = array(
                        'username' => $data'username'], //Informations saisies via le formulaire
                        'facebook_id' => $infos'id'], //Information facebook
                        'email' => $infos'email'], //Information facebook
                        'firstname' => $infos'first_name'], //Information facebook
                        'lastname' => $infos'last_name'], //Information facebook
                    );
                    if ($this->User->save($d)) {
                        $this->Session->setFlash("Vous êtes maintenant inscrit à notre site internet.","notif");
                        $u = $this->User->read(); 
                        $this->Auth->login($u'User']); 
                        $this->User->id = $this->Auth->user('id');
                        $this->User->saveField('lastlogin', date('Y-m-d H:i:s'));
                        $this->redirect('/');
                    } else {
                        $this->Session->setFlash("Votre pseudo est déjà utilisé.","notif",array('type'=>'error'));
                    }
                }

Je ne sais pas trop quoi faire là car quand je laisse le session start, dans cakephp je n'ai aucunes trace du composant Auth.

Merci.

J'ai visualisé la vidéo y a aucune remarque dans ce sens
tu n'utiliserais pas autres part les sessions?

TraxX
Auteur

Non, comme dis dans la vidéo il faut supprimer les lignes indiquées ci-dessus.
La chose qui a aussi changé par rapport à la vidéo c'est le SDK de facebook à utiliser.

Vraiment je ne sais plus quoi faire....

Cordialement.