Auteur
Grafikart

38 Commentaires

2f3da696f9827f3c4ba687e0402a61ee?s=200&r=pg&d=mm
Markos, 05-11-2014 20:23:28 - Répondre

y a til une solution a faire pour twitter et google+ ... dans mon application j'utilise l'authentification cakephp auth classique mais aussi je peux permettre aux utilisateurs de se connecter via facebook , twitter et google+ ...

F43b53f612ee29a130284f93c69e31f5?s=200&r=pg&d=mm
lala93, 12-10-2014 19:42:51 - Répondre

C mortel

288fb7fadcd632453524c078d12cafbe?s=200&r=pg&d=mm
Anonbibi, 16-09-2014 21:44:37 - Répondre

Bonjour,

Voila sur beaucoup de forum on peut voire des problèmes de getUser = 0 (si get user = 0 pas d id donc pas réponse positive de facebook), juste un conseil vérifié la class de votre bouton en effet grafikart utilise le class facebookConnect pour lancer la fonction de Facebookconnect.js du coup si vous supprimez la classe du bouton de connexion facebook le script ne s’exécute plus je parle en connaissance du problème lol

En espérant vous aider

A9cdc5459d30b7cb4b69b48114cbe203?s=200&r=pg&d=mm
TiDJ, 16-12-2013 12:07:24 - Répondre

Bonjour,

Voila plusieurs jours que je bloque sur un problème au niveau de la connexion :

Quand je fait le "this->User->find" puis un "debug($u)", mon "password" a une valeur ('password'=>'*****') alors qu'il n'en a pas dans ma bbd, savez-vous comment je peux trouver la source du problème ?

Je pense que c'est a cause de ça que je n'arrive pas a log mon utilisateur...

B39eadb4a69b301084298f8ef913c628?s=200&r=pg&d=mm
kalagan, 10-11-2013 01:24:28 - Répondre

Merci pour ce tuto :)

470faa3cf72726e13f80dac5865b4bad?s=200&r=pg&d=mm
p0k3, 06-02-2013 10:27:52 - Répondre

Bonjour,

Je teste ce tutoriel sur mon serveur local sous WAMP,

Mais lorsque j'essaie de récupérer les données de l'utilisateur connecté, l'API plante (timeout() Hote introuvable). Il semblerait que ça vienne de CURL qui n'arrive pas à parser les URL en https !!

Quelqu'un aurait une solution ?

Ad8367bda19f6a5818001c8d5e74a5f2?s=200&r=pg&d=mm
Eric Fergusson, 16-11-2012 09:33:30 - Répondre

Bonjour, j'ai un soucis, lorsque je clic sur le lien "se connecter avec facebook" j'ai bien la fenetre qui s'ouvre, mais lorsque je clic sur accepter j'ai donc les erreurs suivants:

An Internal Error Has Occurred
Error: An Internal Error Has Occurred.

Stack Trace
#0 C:\wamp\www\Bootstrap\app\Lib\Facebook\facebook.php(18): require_once()
#1 C:\wamp\www\Bootstrap\app\Controller\UsersController.php(23): require('C:\wamp\www\Boo...')
#2 [internal function]: UsersController->facebook()
#3 C:\wamp\www\Bootstrap\lib\Cake\Controller\Controller.php(476): ReflectionMethod->invokeArgs(Object(UsersController), Array)
#4 C:\wamp\www\Bootstrap\lib\Cake\Routing\Dispatcher.php(106): Controller->invokeAction(Object(CakeRequest))
#5 C:\wamp\www\Bootstrap\lib\Cake\Routing\Dispatcher.php(88): Dispatcher->_invoke(Object(UsersController), Object(CakeRequest), Object(CakeResponse))
#6 C:\wamp\www\Bootstrap\app\webroot\index.php(96): Dispatcher->dispatch(Object(CakeRequest), Object(CakeResponse))
#7 {main}

Quelqu'un a t'il une solution SVP ? je débute vraiment en objet et je suis perdu ...

Merci d'avance

Daa1ff177bf15c08678279089a589cf0?s=200&r=pg&d=mm
eliott, 21-10-2012 20:28:14 - Répondre

Tutoriel vraiment interessant, merci Grafikart. Grace au compte prenium je dois avoir tous le site sur ma clé USB :)

D41d8cd98f00b204e9800998ecf8427e?s=200&r=pg&d=mm
Milo, 18-07-2012 18:08:01 - Répondre

Bonjour! Maxooo! Merci pour le bout de code sur le système de session! J'étais bloqué dessus toute la journée, et il fallait juste mettre cette ligne!! Mille Merci à toi! Merci aussi pour ce tutoriel qui m'a été d'une grande aide!
cordialement
Milo

F762b5094554f774db2b0f5ea6f4ce95?s=200&r=pg&d=mm
stef, 13-07-2012 20:02:41 - Répondre

Bonjour,
Qui a la solution pour la version 2.2 de cakephp?

Merci

95628a22a5c2244dd2bc67129930ab81?s=200&r=pg&d=mm
Maxooo, 20-06-2012 14:26:26 - Répondre

Bonjour,

Tout d'abord un grand merci pour ce tutoriel toujours aussi clair et bien présenté qui m'a permis de me conforter dans le problème lié aux session.

Pour ceux et celles qui souhaiteraient faire fonctionner le système de connexion par session sans avoir à modifier la classe Facebook, il est possible de "forcer" CakePHP à lancer les session avant la classe Facebook, en lançant un appel quelconque (la consultation par exemple - cf. read()) sur les données de session avant l'appel de la classe.

Ex:
public function facebook()
{
$this->Session->read();
$facebook = new Facebook(...);
[...]
}

Cordialement,
Maxooo

01c2824c79133dd9014ed6c5652ebfe4?s=200&r=pg&d=mm
Doude, 17-03-2014 13:07:52 - Répondre

Merci pour le "$this->Session->read();" avec le nouveau SDK l'édition de la classe Facebook et plus chaude

D41d8cd98f00b204e9800998ecf8427e?s=200&r=pg&d=mm
akorti, 15-04-2012 13:01:47 - Répondre

Bonjour, Merci pour ce tutoriel. J'ai tout suivi à la lettre mais j'obtiens l'erreur suivante:

La clé API que vous avez spécifiée est invalide.
L’application à laquelle vous tentez d'accéder n’existe pas ou est désactivée.

Pourtant j'ai bien créé l'application... comment cela se fait-il?

Merci d'avance pour votre aide

4cd517ec1128cdd9d8adf5bf791fb4c4?s=200&r=pg&d=mm
unixvers, 08-04-2012 11:47:45 - Répondre

Merci pour ce tutoriel fort sympathique =)

J'aurai une petite question concernant cette ligne
"$this->Session->write('test','test');"

Je comprend bien que sans celle-ci cela ne fonctionne pas bien, je m'explique au début je suivez le tutoriel tout en reproduisant tout comme vous les lignes de code, mais je remarqué que j'étais logger avant même l'enregistrement du pseudo en BDD et quand je voulais changer de page en effectuant la redirection vers ('/'), je me fessai entièrement déconnecter.

En reprennent le tutoriel depuis le début et au bout de 3 fois cella donné toujours le même résultat la session se vider a chaque fois.

En téléchargeant les sources j'ai remarqué du premier coup cette ligne "$this->Session->write('test','test');" en l'ajoutant a ce que j'avais fait cella fonctionné bien.

Je comprend que cette ligne écrit dans la variable de session une entrée, test avec comme valeur test, mais je ne comprend pas trop le rapport avec Facebook, si ce n'est que sa oblige la session la session a garder la connexion permanente avec Facebook.

Es-ce que cella est bien résumé ou je fait fausse route ?

Encore merci et bravo pour votre site je trouve le design assez épuré.

De588865ed14990420611563cba8dff9?s=200&r=pg&d=mm
kevanescence, 12-03-2012 22:51:25 - Répondre

J'ai le même problème. Pas moyen d'avoir autre chose que 0 après un appel de getUser(). Quelqu'un aurait une idée?

2635ace5256e834de1efeacd25079584?s=200&r=pg&d=mm
yassotreyo, 19-02-2012 15:28:53 - Répondre

Hello,
Pareil pour moi, quand j'utilise getUser(), ça renvoie toujours 0, j'ai tout vérifier plusieurs fois, je ne comprends pas ???
De plus après login (que je le fasse en JS ou via l'api php avec getLoginUrl, j'ai l'impression qu'il ne se passe pas ce qu'il faut avec la session, la seule info ajoutée est [fb_xxxx_state] => xxxxxxxxxx. Rien d'autre.
J'ai bien supprimer les lignes dans le fichier facebook.php.
Quelqu'un à une idée ? est ce qu'il y a une config particulière au niveau des sessions qui est différente avec cakephp 2.0 ?

D41d8cd98f00b204e9800998ecf8427e?s=200&r=pg&d=mm
Enophi, 12-02-2012 22:19:43 - Répondre

Bonsoir à tous !

Super tuto :D
Je rencontre juste un petit souci. Lorsque j'utilise "$facebook->getUser()", il me renvoi 0 o_O
Une petite aide du grand gourou ne serait pas de refus ;)

Cordialement

D0cbfe9cd45ff9c505a6ebfc78b30163?s=200&r=pg&d=mm
Kanjiro, 16-11-2011 13:54:29 - Répondre

Me revoila, j'ai trouvé la réponse ^^

Au cas où quelqu'un cherche aussi, voila la solution, il suffit d'enregistrer son avatar comme suit (en reprennant la variable du tutoriel) :
http://graph.facebook.com/$user/picture

On aura la photo de profil actuelle du membre (ensuite libre à lui de la changer s'il ne veut pas la publier sur le site)

Pour l'afficher en plus grand (parce que c'est assez petit comme ça), il faut ajouter à la fin ?type=large, donc le lien final sera :
http://graph.facebook.com/$user/picture?type=large

J'espère que ça a aidé quelques uns =)

Kanji

D0cbfe9cd45ff9c505a6ebfc78b30163?s=200&r=pg&d=mm
Kanjiro, 16-11-2011 10:58:31 - Répondre

Bonjour,

Tout d'abord merci beaucoup pour ce tutoriel, ça fait un petit moment que je cherche à intégrer facebook connect à mon site web, mais je ne trouvais que des tutos avec l'ancienne interface >.<'

Là à mon niveau tout marche bien, j'arrive à me connecter, enregistrer le membre dans la base de données, etc... , mais j'aimerai savoir comment récupérer la photo de profil du membre en question pour l'ajouter dans ma base de données et de l'utiliser comme avatar du membre en question sur le site.

Je précise que je ne veux pas avoir accès à toutes les photos de la personne (sauf si c'est le seul moyen), mais seulement à sa photo de profil au moment de la 1ère connexion.

Merci d'avance,
Kanji =)

A989d69219022433ebc0a06234da1c01?s=200&r=pg&d=mm
thibautrey, 11-11-2011 23:40:01 - Répondre

Désolé pour la coupure du message*

Je disais donc, je rencontre un petit soucis. Cela fait plusieurs fois que j'essaye de faire fonctionner le script que facebook propose mais je n'y parvient pas. En fait le script fonctionne très bien en localhost mais dès que je le teste sur le serveur il ne se passe rien quand je clique sur le lien. Plus étonnant encore, a un moment lors de mes tests j'ai oublié de changer l'app id 'YOUR_APP_ID' et la cette fois le script c'est ouvert mais bien évidement me renvoyé une erreur. Quelqu'un a t-il le même problème ?

Merci d'avance de vos réponses.

E88a74eaa9b296d7d0c16c797f3a312d?s=200&r=pg&d=mm
thibautrey, 11-11-2011 23:36:52 - Répondre

Je rencontre un petit soucis. Cel

38f98495d61ef95375d1e2670f870cdb?s=200&r=pg&d=mm
ThePooh, 08-11-2011 04:08:58 - Répondre

Super tuto, à noter quand même pour ceux qui veulent pas se prendre la tête outre mesure qu'il existe des plugins déjà tout faits (sur cakephp mais j'imagine sur tous les autres frameworks) : https://github.com/webtechnick/CakePHP-Facebook-Plugin

Evidemment ce plugin va plus loin que la simple "authentification"

8653037aa0ca688e90a906b4b0a574f5?s=200&r=pg&d=mm
lmorel3, 29-10-2011 13:00:09 - Répondre

Super simple le truc en fait, merci à toi Graf' ;)

1
Grafikart, 29-10-2011 14:46:33 - Répondre

Oui quand on a déjà rencontrer tous les problèmes ça va vite :D

04b739c4d3139f8a500e1e27f1dabde3?s=200&r=pg&d=mm
creataddict, 29-10-2011 10:54:17 - Répondre

Dommage que c'est un tuto lie avec cakephp.

773b4aa6e4d55500126f588ef1a9efe3?s=200&r=pg&d=mm
avatarvb, 29-10-2011 02:47:34 - Répondre

Merci bien

22c2d2c3779981f1d961e6fec29e6046?s=200&r=pg&d=mm
MrGuillou, 28-10-2011 22:13:05 - Répondre

Très bon tuto, Merci pour le lien SDK facebook

4083f58cc98df06ab68832834c4115cc?s=200&r=pg&d=mm
Divin, 28-10-2011 21:08:01 - Répondre

Salut

Merci pour ces tutos qui font innover nos sites

Je me demandais si l'on pouvait adapter ce système à un site disons 'plus classique' qui ne possède pas le système cakephp ?

1be60808049b010c4ca8510730d52086?s=200&r=pg&d=mm
Rtransat, 28-10-2011 21:47:50 - Répondre

Heureusement que oui ;). Si l'API était juste utilisable avec Cake sa serait limite ridicule comme API.

1
Grafikart, 29-10-2011 00:02:04 - Répondre

Oui tu peux, le process est exactement le même sauf que pour la partie enregistrement en base ça te prendra plus de temps à coder :D

F39de96fdbf7ceda1df10480efbd49df?s=200&r=pg&d=mm
Hotgeart, 28-10-2011 20:09:15 - Répondre

@frans non je pense pas sinon tu pourrais lui voler son mdp facilement.

14bfb438fb159d3ac00871bfcbe58b91?s=200&r=pg&d=mm
frans2526, 28-10-2011 19:28:52 - Répondre

Super tuto malgré la fatigue :)

Cependant, si l'utilisateur choisit de s'inscrire via facebook il devra toujours se connecter avec facebook ou il y a moyen de récupérer un mot de passe pour qu'il puisse se connecter de façon plus classique ?

1
Grafikart, 28-10-2011 19:50:25 - Répondre

Tu peux générer un mdp et lui envoyer par mail à la volée, ça peut être une idée :)

8aa54c78ffcd9291923da1216c1d4951?s=200&r=pg&d=mm
Ciloe, 29-10-2011 09:59:23 - Répondre

J'ai appris de ne jamais envoyer de mot de passe par mail en clair... C'est pas si dangereux?

0d06caf77764575c5ddabc34a0c3e1b5?s=200&r=pg&d=mm
HarryLafranc, 29-10-2011 15:17:15 - Répondre

Sachant que c'est un mot de passe généré et que l'utilisateur vient de s'inscrire, disons que ce n'est pas gênant car dans les 10 minutes qui suivent l'utilisateur aura changé le mot de passe (et encore plus rapidement si on demande une confirmation par mail ou qu'on prévient l'utilisateur qu'un mot de passe a quand même été généré).

8aa54c78ffcd9291923da1216c1d4951?s=200&r=pg&d=mm
Ciloe, 31-10-2011 10:23:27 - Répondre

Oui je vois, effectivement sous se point de vue ^^, ça n'est pas très grave.

63a91d763a1eae9b3789dc5d52784eef?s=200&r=pg&d=mm
PaulB319, 28-10-2011 19:07:15 - Répondre

Un nouveau super tuto ! Je l'attendais depuis son annonce sur Twitter :)

D41d8cd98f00b204e9800998ecf8427e?s=200&r=pg&d=mm
ronytexasranger, 28-10-2011 18:38:47 - Répondre

Voila qui tombe bien !!!