모듈 URL: http://kimsq.com/?m=qmarket&p=1&page=view&uid=26

(모듈에 대한 전반적인 설명은 위의 URL 참고)


킴스큐 Rb 소셜링크 모듈에는 두 개의 테이블이 존재한다. 


1. rb_social_user -> sns 유저 데이터

2. rb_social_data -> sns 전송 데이터



1. rb_social_user (sns 유저 데이터)


1) 테이블 생성 쿼리: 

CREATE TABLE ".$table[$module.'user']." (

memberuid     INT PRIMARY KEY NOT NULL,

provider     CHAR(1) DEFAULT '' NOT NULL,

id_t     VARCHAR(50) DEFAULT '' NOT NULL,

id_f     VARCHAR(50) DEFAULT '' NOT NULL,

id_m     VARCHAR(50) DEFAULT '' NOT NULL,

id_y     VARCHAR(50) DEFAULT '' NOT NULL,

extra_t     TEXT NOT NULL,

extra_f     TEXT NOT NULL,

extra_m     TEXT NOT NULL,

extra_y     TEXT NOT NULL) ENGINE=".$DB['type']." CHARSET=UTF8");        


2) 각 필드에 대한 설명 (추측)

총 10개의 필드가 존재하는데 DB 테이블에 대한 설명을 제공하지 않기 때문에 이름만 가지고 의미를 추측해본다. 

1. memberuid: PRIMARY KEY (AUTO_INCREMENT가 아닌 것으로 보아 아마도 rb_s_mbrid 테이블의 uid에 대한 포린키인듯)

2. provider: 아마도 Facebook의 경우 'f', 트위터의 경우 't', 네이버 미투데이의 경우 'm', 다음 요즘의 경우 'y'를 저장하는 듯.

3. id_t: SNS 유저의 트위터 ID

4. id_f: SNS 유저의 페이스북 ID

5. id_m: SNS 유저의 미투데이 ID

6. id_y: SNS 유저의 요즘 ID

7. extra_t: SNS 유저의 트위터 계정에 대한 여분 필드(?)

8. extra_f: SNS 유저의 페이스북 계정에 대한 여분 필드(?)

9. extra_m: SNS 유저의 미투데이 계정에 대한 여분 필드(?)

10. extra_y: SNS 유저의 요즘 계정에 대한 여분 필드(?)


3) 이슈사항 & 궁금한 점

1. 소셜 로그인을 사용을 해봐도 이 테블에 저장도는 데이터가 없음. 

- 소셜 로그인을 해도 이 테이블이 아닌 rb_s_mbrdata 테이블 등에 회원 정보가 저장이 되는 듯

- 일반 계정에서 SNS 소셜계정 연결을 하여도 이 테이블에 생성되는 정보는 하나도 없고 rb_s_mbrdata 테이블의 sns 항목에 정보가 추가됨. 

- 그렇다면 이 테이블은 도대체 언제 어디에서 사용이 되는 것인가???




2. rb_social_data (sns 전송 데이터)


1) 테이블 생성 쿼리: 

CREATE TABLE ".$table[$module.'data']." (

uid INT PRIMARY KEY NOT NULL     AUTO_INCREMENT,

gid INT DEFAULT '0' NOT NULL,

provider CHAR(1) DEFAULT '' NOT NULL,

snsid VARCHAR(50) DEFAULT '' NOT NULL,

subject VARCHAR(250) DEFAULT '' NOT NULL,

name VARCHAR(30) DEFAULT '' NOT NULL,

nic VARCHAR(50) DEFAULT '' NOT NULL,

mbruid INT DEFAULT '0' NOT NULL,

id VARCHAR(16) DEFAULT '' NOT NULL,

targeturl VARCHAR(250) DEFAULT '' NOT NULL,

cync TEXT                         NOT NULL,

d_regis VARCHAR(14) DEFAULT '' NOT NULL,

KEY gid(gid),

KEY provider(provider),

KEY snsid(snsid),

KEY mbruid(mbruid),

KEY id(id)) ENGINE=".$DB['type']." CHARSET=UTF8"); 


2) 각 필드에 대한 설명 (추측)

총 12개의 필드가 존재하는데 DB 테이블에 대한 설명을 제공하지 않기 때문에 이름만 가지고 의미를 추측해보자면..

1. uid - PRIMARY KEY

2. gid - ???. 첫 번째 기록이 1000000000이던데 레코드가 추가될 수록 하나씩 감소하는 듯. 

3. provider 아마도 Facebook의 경우 'f', 트위터의 경우 't', 네이버 미투데이의 경우 'm', 다음 요즘의 경우 'y'를 저장하는 듯.

4. snsid - 해당 SNS에서 사용하는 사용자 ID

5. subject - 제목인데 아마도 소셜 댓글 달 때 제목란에 넣는 텍스트인 듯

6. name - 회원의 이름

7. nic - 닉네임(?)

8. mbruid - 회원 ID (킴스큐 Rb 내부적으로 사용하는 ID)

9. id - 회원 ID (로그인 시 사용하는 회원 ID)

10. targeturl - 작성한 글이 등록된 SNS 링크

11. cync - "[bbs][12][uid,comment,oneline,d_comment][rb_bbs_da..."  - 이런 형식으로 저장이 되는데 아마도 전송한 소셜 댓글에 대한 식별값인듯

12. d_regis - 전송된 시간 timestamp  ex) 20120911004506


3) 이슈사항 & 궁금한 점

1. 이 사이트의 정식 회원(? - SNS 소셜 로그인이 아닌 가입한 일반회원)에 대해서만 기록이 저장되는지?

2. 아마도 그런 듯 싶은데 일반회원이 아닌 사람이 SNS으로 퍼갈 경우 저장되는 기록은 없는가?


Posted by 파노카페
: