카카오 계정으로 로그인할 때 닉네임 가져오는 방법 질문드립니다. 채택완료
소스는
http://cafe.naver.com/themeplace/106">http://cafe.naver.com/themeplace/106
여기에 있고
카카오 로그인 부분은 카카오 개발자 센터에서 찾았습니다.
https://devtalk.kakao.com/t/ie8/1110" target="_self">https://devtalk.kakao.com/t/ie8/1110
덕분에 카카오 로그인도 성공했는데요.
문제는 닉네임을 못가져옵니다 ㅠㅠ
위 소스에서
</p><p> if(strlen($client->access_token))</p><p> {</p><p> $success = $client->CallAPI(</p><p> // kakao API request</p><p> '<a href="https://kapi.kakao.com/v1/user/me'," target="_blank" rel="noopener noreferrer">https://kapi.kakao.com/v1/user/me',</a></p><p> 'GET', array(), array('FailOnAccessError'=>true), $user);</p><p> }</p><p> }</p><p> $success = $client->Finalize($success);</p><p> }</p><p> if($client->exit)</p><p> exit;</p><p> if($success)</p><p> {</p><p> $client->GetAccessToken($AccessToken); </p><p>
여기 밑에
</p><p><span class="Apple-tab-span" style="white-space: pre;"> </span>$mb_id = $user->id;</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>$mb_name = $user->name;</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>$mb_nick = $user->name;</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>$data1 = $AccessToken['value'];</p><p><span class="Apple-tab-span" style="white-space: pre;"> </span>$data2 = $AccessToken['secret']; </p><p>
이런 식으로 붙는데 아무리 수정해도 안되네요 ㅠㅠ
카카오 개발자홈페이지에서 보면
https://developers.kakao.com/docs/restapi#사용자-관리-사용자-정보-요청" target="_self">https://developers.kakao.com/docs/restapi#사용자-관리-사용자-정보-요청
위와 같이 요구하는 URL은 맞는데... 그 뒤가 잘 안되네요 흑흑
http://webmandu.net/archives/1422" target="_self">http://webmandu.net/archives/1422
윗 글도 도움이 될 것 같아서 찾아봤는데 그 이상 안나오네요 ㅠㅠ
초보가 따라하긴 힘들지만 소셜로그인 완성해보려고 노력 중입니다 .ㅠㅠ
답변 2개
제설정부분입니다.
</span></p><p><span style="font-size: 10pt; line-height: 1.5;">$kakaoInfo['displayName']</span><span style="font-size: 10pt; line-height: 1.5;"> = </span><span style="font-size: 10pt; line-height: 1.5;">$user_profile-></span>nickname<span style="font-size: 10pt; line-height: 1.5;"></span><span style="font-size: 10pt; line-height: 1.5;">;</span></p><p>$displayName = $kakaoInfo['displayName'];</p><p>$displayName = trim($displayName);</p><p>$displayName = str_replace(array('\'', '\"'), array('\'', '\\\''), $displayName);</p><p>$displayName = html_entity_decode(cut_str(get_text(preg_replace("(\<(/?[^\>]+)\>)", "", strip_tags($displayName))), 20, "")); </p><p>
실제는 받아오나 공백이라든지 특수 문자 때문에 DB에 들어가지 않을수 있을수도 있습니다.
답변에 대한 댓글 2개
댓글을 작성하려면 로그인이 필요합니다.
$mb_id = $user->id;
$mb_name = $user->properties->nickname;
$mb_nick = $user->properties->nickname;
$data1 = $AccessToken['value'];
요렇게 넣으니 닉네임 잘 나오네요.
고맙습니다.
답변에 대한 댓글 1개
$user_profile->id = @ $data->id;
$user_profile->nickname = @ $data->properties->nickname;
$user_profile->thumbnail_image = @ $data->properties->thumbnail_image;
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
카페: 레벨제한.
ps. 저같은 경우는 http://hybridauth.sourceforge.net/ 를 이용 하고 있습니다.