CakePHP2とComposerでFacebookログインを実装するまで


みなさんあけましておめでとうございます!
2ヶ月くらい更新してなかったですが、ブログは書き続けてたほうがいいなぁと思っていたので新年からまた書き始めます!

それでは早速書いていきましょう。

最近Composerを使ってCakePHPでFacebookログインを実装したので、そこまでの流れをまとめておこうと思います。

それでは以下が目次になります。

Composerで必要なものをインストールする

composer.jsonから作っていきましょう。

CakePHPFacebook PHP SDKをインストールするので以下のように書けばインストール出来ます。

composer.pharをダウンロードしてパッケージをインストールしていきます。

Bakeでプロジェクトを作成します。

これでブラウザからアクセスすると、いつもの緑画面が出てくると思います。

ここまでで大方終了しましたが忘れちゃいけないので CAKE_CORE_INCLUDE_PATH を書き換えること。

3箇所書き換えていきましょう。

webroot/index.php

webroot/test.php

Console/cake.php

最後にデータベースをbakeして終了っと!

実装前の準備をする(Facebookアプリ作成、SDKの読み込み、データベース等)

次にFacebookアプリやFacebookSDKの読み込み、データベースの作成等を行っていきます。

以下のURLに飛び、Facebookアプリを「新規作成」し、アプリIDとシークレットをゲットしておいてください!

次にcomposerでいれたFacebook PHP SDKを読み込んでいきます。
PagesController.php で読み込んでいきましょう。

PagesController.php

最後にデータベースです。
今回は Admin テーブルを作成しその中にログインに必要な情報を事前に入れておこうと思います。
実際に試す場合は自分のFacebookIDを入れておいてください。

最後の最後に! routes.php 内でPagesControllerのルーティングが定められているのでそれをコメントアウトしておきます。

これで終了です。やっと本題にいきましょう!

Facebookログインを実装していく

さて、やっと本題です。
ログインの流れとしては、

  • ログインボタンクリック
  • Facebook側で認証をする
  • 認証後リダイレクト先でFacebookIDが取れ、データベース内にそのIDがあればログインを完了させマイページに飛ばす

こんな感じでやっていこうと思います。

一気にいきます。PagesController.phpにがばっと書いていきます。

PagesController.php

わからなければ質問なり公式ドキュメントを参照してください!!!

Modelのフォルダ内に Admin.php を下記のような感じで作成します。

Viewは index.ctpmy.ctp を作ります。

index.ctp

my.ctp

これでFacebookログインが実装できました!!

最後に

いかがでしたでしょうか。
なんとなくの流れは理解出来たかなぁと思います。
何かわからない点がありましたらコメントやTwitterで聞いていただければと思います!

CakePHP本が続々出ていますね。

Webアプリ開発を加速する CakePHP2定番レシピ119
長谷川 智希
秀和システム
売り上げランキング: 15,164

更新情報はFacebookページで!

ブログの更新、読んで役立つ他ブログの記事などを更新しています。




関連のある記事


質問があればこちらからどうぞ

コメントを残す

メールアドレスが公開されることはありません。


*