테스트 사이트 - 개발 중인 베타 버전입니다

[SNS로그인] 카카오가입시 나이 가져오기가 안됩니다 ..

g현공 9년 전 조회 3,436

단지님 플러그를 이용해서 SNS로그인은 다 됩니다.

문제는 네이버와 같이 카카오에서 

이메일/ 성별 / 나이 / 생일을 받아 오고 싶은데요

 

성별은 우째우째 하다 보니 가져왔습니다.

그런데 나이가 안가져와집니다.

 

고수님들 소스 부탁드립니다.. 

 

아래는 제가 적용해본겁니다.

성별은 여분의필드에 남/여로 구분하기 위해 저리 하니

잘 나옵니다.

 

근데 나이가 안나옵니다..

부탁드립니다. ^^

 

</span><span style="font-size: 11pt;"> </span></p><p style="margin-left: 40px;">$contents = $kakao->GetUserProfile();</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>$obj = json_decode($contents);<span style="font-size: 11pt;"> </span></p><p><span class="Apple-tab-span" style="white-space:pre">	</span>$id = $obj->id;</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>$nickname = $obj->properties->nickname;</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>$profile_image = $obj->properties->profile_image;</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>$thumbnail_image = $obj->properties->thumbnail_image;</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>$email = $obj->properties->email;</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>$age = $obj->properties->age;</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>$gender = $obj->properties->gender;</p><p> </p><p><span class="Apple-tab-span" style="white-space:pre">	</span>$birthday = $obj->properties->birthday;</p><p style="margin-left: 40px;">if ( $content['gender'] = 'M')</p><p><span class="Apple-tab-span" style="white-space:pre">		</span>{ </p><p><span class="Apple-tab-span" style="white-space:pre">		</span>  $genderdata = "남";</p><p><span class="Apple-tab-span" style="white-space:pre">		</span>} </p><p><span class="Apple-tab-span" style="white-space:pre">		</span>elseif ( $content['gender'] = 'F')</p><p><span class="Apple-tab-span" style="white-space:pre">		</span>{ </p><p><span class="Apple-tab-span" style="white-space:pre">		</span>  $genderdata = "여";</p><p><span class="Apple-tab-span" style="white-space:pre">		</span>} </p><p><span class="Apple-tab-span" style="white-space:pre">		</span>elseif ( $content['gender'] = 'U')</p><p><span class="Apple-tab-span" style="white-space:pre">		</span>{ </p><p><span class="Apple-tab-span" style="white-space:pre">		</span>  $genderdata = "N/A";</p><p><span class="Apple-tab-span" style="white-space:pre">		</span>};</p><p>$kakao_user = array(</p><p><span class="Apple-tab-span" style="white-space:pre">			</span>'mb_id' => sl_id_check($id),</p><p><span class="Apple-tab-span" style="white-space:pre">			</span>'mb_password' => SL_PASSWORD.$id,</p><p><span class="Apple-tab-span" style="white-space:pre">			</span>'mb_email' => $email,</p><p><span class="Apple-tab-span" style="white-space:pre">			</span>'mb_name' => str_replace(' ', '', $nickname),</p><p><span class="Apple-tab-span" style="white-space:pre">			</span>'mb_nick' => sl_nick_check($ndata),<span class="Apple-tab-span" style="font-size: 11pt; white-space: pre;">			</span></p><p><span class="Apple-tab-span" style="white-space:pre">			</span>SL_AGE_FIELD => $age,</p><p style="margin-left: 120px;"><span style="font-size: 14.6667px;">// SL_AGE_FIELD => </span><span style="font-size: 14.6667px;">$content['</span><span style="font-size: 14.6667px;">age</span><span style="font-size: 14.6667px;">']</span><span style="font-size: 14.6667px;">, 혹시나해서 이렇게도 넣어봤습니다.. 안됩니다..</span><span class="Apple-tab-span" style="white-space:pre">	</span></p><p><span class="Apple-tab-span" style="white-space:pre">			</span>SL_BD_FIELD => $birthday,</p><p><span class="Apple-tab-span" style="white-space:pre">			</span>SL_GENDER_FIELD => $genderdata,</p><p><span class="Apple-tab-span" style="white-space:pre">			</span>SL_PROFILE_IMAGE2_FIELD => $thumbnail_image, </p><p><span class="Apple-tab-span" style="white-space:pre">			</span>SL_PROFILE_IMAGE_FIELD => $profile_image, </p><p><span class="Apple-tab-span" style="white-space:pre">			</span>SL_ID_FIELD => $id, </p><p><span class="Apple-tab-span" style="white-space:pre">			</span>SL_TYPE_FIELD => 'kakao'</p><p><span class="Apple-tab-span" style="white-space:pre">		</span>);</p><p>

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

그누위즈

성별도 아마 안받아와질텐데..

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

저 코드 상에서 4번째 줄에 

print_r($obj);

이렇게 입력해 보세요.

값이 뭐가 나오는지.

거기에 나이 관련된 게 없으면 제공이 안 되는 겁니다. 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인