후딱닷컴

소소하게 css 수정하는것 정도는 알아도 변경이나 활용은 못하는 초보를 위해 남겨봅니다~.~


그누보드5를 설치해봤는데, 네이버 아이디로 로그인을 하고싶다!

->까지는 그누보드 홈페이지에서 플러그인 다운 받아서 했는데, 해당 아이디의 정보를 알고싶다!

는 분들 참고하세요.


물론 기초적인 단계이고 활용하기 편리하게 정리되려면 한참 멀었지만

조금 불편해도 알기만이라도 하고싶다면 ㄱㄱ~~~


호스팅이 필요하다면 닷홈 무료 호스팅을 신청합니다(최초에 그누보드를 선택하면 이미 깔려져 있답니다! 다만 패치는 해야겠죠. 패치를 하는 방법은..! 바로 그누보드5를 받아서 덮어쓰기 하는 것 입니다+_+) https://www.dothome.co.kr/


그누보드5를 다운받아 설치합니다 https://sir.kr/main/g5/


그리고 플러그인 제작자 편리님의 소셜로그인을 설치해요 https://sir.kr/g5_plugin/2213?sfl=mb_id%2C1&stx=chicpro


이제 이까지 했으면 회원이 네이버 아이디로 로그인을 해서 연동이 가능해졌습니다(해당 플러그인 관련 정보는 윗 페이지에 자세히 설명되어 있어요).


그런데 연동한 정보를 대체 어디서 보는걸까.. 싶으시죠?

사실 게시판의 모든 정보와 회원정보, 또 네아로 정보는 모두 DB에 저장되고 있습니다.

쉽게 확인하기 위해 닷홈에 이미 깔려있는 phpMyAdmin을 활용하려고 해요. 닷홈이 아니고 기본제공이 아니라면 직접 다운받아 설치해도 된답니다.


그래서 DB를 확인하기 위해서 내주소/myadmin 을 들어가서 로그인해보면 "g5_social_member" 라는 테이블이 보일거에요.


이 테이블을 클릭하면


이런 정보가 표시되지요! sm_id는 네이버 아이디를 코드화 시킨것 + 플러그인 임의로 nid_라는 수식을 붙인 것이고, mb_id는 이 홈에 가입한 회원의 아이디, sm_ip는 연동 순간의 ip주소 입니다.

네아로가 제공하는 정보는 변형id, 연령대, 성별등이 있는데, id는 쌩 네이버 아이디가 아니라 id를 숫자로 변형시킨것이니 회원도 안심하고 연동할 수 있겠죠?ㅋㅋ 저렇게 변형된 id는 같은 id로 연동했는지를 체크하는데 쓴답니다.


그런데 난 여성용 커뮤니티를 만들고 싶다! 라고 생각했다면 네아로가 제공하는 기본 정보 중 성별을 받아와야 합니다.

대체 이건 어디서 받아야 하는지ㅠㅠ 초보는 그저 네이버 디벨로퍼 센터에 들어가서 https://developers.naver.com/docs/login/api/ 기본적인 구조를 공부할 수밖에 없겠죠.. 질답 게시판을 가도 이렇게 정리가 쉽게 잘 되어있는 네아로에 대해서 물어보다니; 하는 답밖에 보지 못했습니다ㅠㅠ


그런데 그게 정말이었어요. 정말 쉽게 정리되어 있으니 꼭 정독을 하길 권장합니다ㅋㅋㅋㅋ


아무튼 이걸 읽고나서 소셜로그인 플러그인 php를 자세히 보면 구조가 살짝 보입니다. 뭐를 임시로 받아서 어디에 접속되고 어쩌고저쩌고.. 그럼 어떤게 필요한지도 대강 감이 잡히겠죠?


우리에게 필요한 것은 연동아이디의 '변환id', '성별' 을 'DB'에 저장한다. 입니다.



1. 그럼, 사용할 새로운 테이블을 만들어 봅시다.



이 페이지에서 테이블과 칼럼(아래 몇줄 있는것)을 생성합니다.

check_id는 테이블 이름이고 c_id와 c_gender는 칼럼 이름이에요.



테이블 이름과 칼럼 이름은 달라도 상관없어요~



2. php파일에 id와 gender를 DB로 넣는다는 명령어를 입력


우선 해당 명령어는 


// Create connection

$conn = new mysqli('localhost', '아이디', '비번', 'DB이름(닷홈에서는 아이디와 같음)');


// Check connection

if ($conn->connect_error) {

    die("Connection failed: " . $conn->connect_error);


$nid = $oauth->profile->id;

$gender = $oauth->profile->gender;


$sql = "INSERT INTO check_id (c_id, c_gender)

VALUES ('$nid', '$gender')";


if ($conn->query($sql) === TRUE) {

} else {

}


$conn->close();


△이렇게 생겼습니다.

conn이라는 명령어는 다 같기만 하면 다른 단어를 써도 상관없어요. 그저 DB 정보니까요.

저같은 왕초보를 위해 설명하자면 대략 

$뫄뫄 = 는 어떤 설정이거나 무슨 값입니다.

라는 식으로 정의를 내리는 것이구요, 그 아래에 $뫄뫄 를 활용한 명령어를 쓰는것 입니다.

그렇기 때문에 $뫄뫄라는 이름은 아래에 활용될 때 같기만 하면 아무 알파벳을 써도 되는거죠.


테이블 만들 때 적었듯 check_id 는 테이블 이름, c_id, c_gender 는 칼럼이름 입니다.


그럼 이 코드를 어디에 넣느냐.. 하면 /plugin/oauth/naver/callback.php 이 파일 입니다. 플러그인 속에 넣는것이죠.


네.. 저곳에요.



3. 그리고 테스트용 아이디로 연동을 시도해보면



DB에서 변형id와 성별을 확인 가능!!!


네이버 디벨로퍼 페이지로 가면 확인 가능한 정보가 무엇인지 코드가 무엇인지 자세하게 적혀있으니 같은 방식으로 확인 가능합니다^^!