| 제목 | 페이스북 로그인 질문 드립니다. | ||
|---|---|---|---|
| 글쓴이 | 반벽이 | 작성시각 | 2015/10/12 15:39:34 |
|
|
|||
|
코드이그나이터 및 php 초보사용자입니다. 페이스북 로그인 api를 사용하고 싶은데, 코드이그나이터로 작성 된 샘플같은 자료를 좀 구할 수 없을까요? 페이스북 Developer에서 App 생성까지는 했는데.. 예제를 봐도 코드이그나이터에 어떻게 적용을 해야 할지 감이 잡히질 않네요..ㅜㅜ; 자세한 설명이나 참고할 만한 URL 링크 부탁드리겠습니다~ 살려주세요..ㅜㅜ |
|||
| 다음글 | SPA를 해주는 CI프레임워크가 있나요? (4) | ||
| 이전글 | 긴급) 도움 요청합니다. 한글,영문 언어팩 작업 질문 (5) | ||
|
kaido
/
2015/10/12 16:44:09 /
추천
0
|
|
kaido
/
2015/10/12 16:45:07 /
추천
0
참고로 curl 설치 되어있으셔야 합니다.
그리고 다른 sns 쪽도 같이 쓰는 코드라서 사용하지 않는 코드가 있을수 있습니다. 구현에 CI가 헷갈리시면 최대한 네이티브 PHP 형태로 구현하고, CI로 바꿔서 구현해 보시면됩니다. |
|
반벽이
/
2015/10/12 17:12:31 /
추천
0
감사합니다.~ 열심히 참고해서 구현해보겠습니다~
|
|
반벽이
/
2015/10/12 17:56:14 /
추천
0
오.. 된다.. ㅎㅎ;
|
content.php 에 상수 선언 define('FACEBOOK_CODE', "FB"); define('FB_CLIENT_ID', "아이디"); define('FB_CLIENT_SECRET', "키값"); define('FACEBOOK_REDIRECT_URI', "http://도메인/auth/callback?type=".FACEBOOK_CODE); //---- 컨트롤러 function sns_login() { $type=$this->input->get("type", TRUE); $mt = microtime(); $rand = mt_rand(); $state=md5($mt . $rand); $this->session->set_userdata('state', $state); if($type==FACEBOOK_CODE) { $url="https://www.facebook.com/dialog/oauth?client_id=".FB_CLIENT_ID."&redirect_uri=".urlencode(FACEBOOK_REDIRECT_URI)."&scope=email,publish_actions"; redirect($url); } function callback($location) { $type=$this->input->get("type", TRUE); $access_token=$this->input->get("access_token", TRUE); $code=$this->input->get("code", TRUE); $state=$this->input->get("state", TRUE); $orig_state=$this->session->userdata("state"); $oauth_token=$this->input->get("oauth_token", TRUE); if($type==FACEBOOK_CODE) { $url="https://graph.facebook.com/v2.3/oauth/access_token?client_id=".FB_CLIENT_ID."&redirect_uri=".urlencode(FACEBOOK_REDIRECT_URI)."&client_secret=".FB_CLIENT_SECRET."&code=".$code; $ch=curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_POST, 0); $result=curl_exec($ch); $json=json_decode($result); $url="https://graph.facebook.com/me?fields=email&access_token=".$json->{'access_token'}; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_POST, 0); $result=curl_exec($ch); $json=json_decode($result); curl_close($ch); $email=$json->{'email'}; } } } 뷰 페이스북나머지는 알아서... ( ..)