안녕하세요.
카카오톡 로그인을 구현하여 잘사용중이었는데…
제가 확인을 늦게한건지… 오늘 오전에 logout 하고 login을 했더니…
정상적으로 로그인경우에 메인페이지로 이동되도록 해놨는데… 메인페이지로 이동이 안되길래…
몇번 더 눌렀더니… 로그인 버튼 눌러도 loading만 되고… 더이상 진행되지 않습니다.
ㅠㅠ
제가 몇일전에 중복로그인 관련하여 쿠키를 db에 입력하여 비교하는 작업을 했는데…
혹시나 싶어서 예전 소스로 다 되돌려봐도…
고장나? 버린 로그인 버튼은 응답하지 않네요 ㅠㅠ
아침부터 몇시간째 수정해보고 있는데… 도저히 안되서 글을 남깁니다.
긴급건이라… 도움부탁드리겠습니다!!!
(느낌은… 제가 업데이트하다가 오류가 있어서 api가 비정상적으로 많이 호출되었었는데…
kakao 내부적으로 block 당하지 않았을까 싶은데 ㅠ 확인부탁드립니다)
로그인시 index.php 소스 입니다.
<?php
include "../DB/connectdb.php";
ini_set("allow_url_fopen","1");
// Opens a connection to a MySQL server
$connection = mysql_connect("localhost", $username, $password);
if (!$connection) {
die("Not connected : " . mysql_error());
}
mysql_query("set session character_set_connection=utf8;");
mysql_query("set session character_set_results=utf8;");
mysql_query("set session character_set_client=utf8;");
// Set the active MySQL database
$db_selected = mysql_select_db($database, $connection);
if (!$db_selected) {
die("Can\'t use db : " . mysql_error());
}
?>
<?
$recall_id="";
if(isset($_COOKIE["idd"]))
{
$recall_id=$_COOKIE["idd"];
}
if(isset($_COOKIE["userid"]))
{
$uid=$_COOKIE["userid"];
?><script>/*alert(<?echo $_COOKIE["userid"] ?>);*/ location.href="../tdhorizon22.html?uid=<?=$uid?>" + "&lgnmd=1";</script>
<?
}
if(!isset($_COOKIE["userid"]))
{
$uid=$_COOKIE["userid"];
?><script>/*alert("null cookie");*/ //location.href="../tdhorizon22.html?uid=<?=$uid?>" + "&lgnmd=1";</script>
<?
}
?>
<?
include "./kakao.php";
$kakao = new KAKAO_LOGIN(array(
"CLIENT_ID" => "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx(rest api key)", // (*필수)클라이언트 ID
"RETURN_URL" => "https://www.consight.co.kr:47627/kakao/index.php", // (*필수)콜백 URL
"AUTO_CLOSE" => true, // 인증 완료후 팝업 자동으로 닫힘 여부 설정 (추가 정보 기재등 추가행동 필요시 false 설정 후 추가)
"SHOW_LOGOUT" => true // 인증 후에 로그아웃 버튼 표시/ 또는 표시안함
)
);
$status = (boolean) $kakao->getConnectState();
$jprofile = $kakao->getUserProfile('JSON');
$json_decoded = json_decode($jprofile,true);
$uid = $json_decoded['id'];
$kemail = $json_decoded['kaccount_email'];
$kemailvf = $json_decoded['kaccount_email_verified'];
$nickname = $json_decoded['properties']['nickname'];
$thumbimg = $json_decoded['properties']['thumbnail_image'];
$profileimg = $json_decoded['properties']['profile_image'];
//$kakao->getUserProfile((string) return type(JSON, XML));
//(string) $kakao->getAccess_token();
// Default : json 반환
// XML 반환시 : $kakao->getUserProfile('XML');
//
?>
// 쿠키관련 추가
$tt1 = date("Y-m-d H:i:s",time());
$ip1 = $_SERVER["REMOTE_ADDR"];
global $random;
$random= rand(0, 9999999);
$cookieLifetime = 365 * 24 * 60 * 60; // A year in seconds
$q177="SELECT * FROM consight.Avoid_duplogin WHERE USER_ID=$uid";
$result177 = mysql_query($q177);
$row177 = mysql_fetch_row($result177);
?>
<?
//uid가 있고, 카카오로그인이 1일때...
if($uid<>null and $status==1){
// Extend cookie life time by an amount of your liking
$cookieLifetime = 365 * 24 * 60 * 60; // A year in seconds
setcookie("userid",$uid,time()+$cookieLifetime,"/");
$tt = date("Y-m-d H:i:s",time());
$q0="select * FROM consight.consight_users WHERE consight_email='$kemail'";
$result0=mysql_query($q0);
$row0 = mysql_fetch_row($result0);
if($row0[0]<>null){
?> <script>alert("일반 계정에 동일한 이메일이 존재합니다. 일반 이메일로 로그인해 주세요."); location.href="../logout.php";</script>
<? //exit;
}
$q1="SELECT * FROM consight.google_users WHERE google_id=$uid";
$result = mysql_query($q1);
$row = mysql_fetch_row($result);
// uid가 db에 없을경우에
if($row[0]==null){
$q2="insert into consight.google_users(google_id, google_name, google_link, google_picture_link, kakao_email) values ($uid,'$nickname','$thumbimg','$profileimg','$kemail')";
$result2=mysql_query($q2);
//신규 쿠키
setcookie("usersec",$random,time()+$cookieLifetime,"/");
$usersecw = $_COOKIE['usersec'];
$q277="insert into consight.Avoid_duplogin(USER_ID, RDATE, IP, COOKIE) values ($uid,'$tt1','$ip1','$usersecw')";
$result277=mysql_query($q277);
/*
?> <script>alert("신규");</script>
<?
?> <script>alert(" <? echo $_COOKIE['usersec']; ?>");</script>
<?
?> <script>alert(" <? echo $usersecw; ?>");</script>
<?
*/
// XE DB insert
$xe_email = $kemail;
$email_address_array = explode('@',$xe_email);
$xe_password = "t".$email_address_array[0]."12";
$xe_name = $nickname;
echo $xe_email."-".$xe_password."-".$xe_name;
include "./xe_member.php";
?><script>//alert("컨사이트에 오신것을 환영합니다"); location.href="../tdhorizon22.html?uid=<?=$uid?>" + "&lgnmd=1";</script>
<? //exit;
}
else if($row[0]<>null){
$q3="update consight.google_users SET google_name = '$nickname', google_link = '$thumbimg', google_picture_link = '$profileimg', kakao_email = '$kemail' where google_id = $uid";
$result3=mysql_query($q3);
//$random= '12345';
$random= rand(0, 9999999);
setcookie('usersec',$random,time()+$cookieLifetime,"/");
$usersecw = $_COOKIE['usersec'];
$q377="update consight.Avoid_duplogin SET RDATE = '$tt1', IP = '$ip1', COOKIE = '$usersecw' where USER_ID = $uid";
$result377=mysql_query($q377);
/*
?> <script>alert("기존");</script>
<?
?> <script>alert(" <? echo $_COOKIE['usersec']; ?>");</script>
<?
?> <script>alert(" <? echo $usersecw; ?>");</script>
<? */
?><script>/*alert("반갑습니다");*/ location.href="../tdhorizon22.html?uid=<?=$uid?>" +"&usec=<?=$usersec?>"+"&lgnmd=1";</script>
<? exit;
}
}
?>