패밀리사이트에서 회원가입연동 > 그누4 팁자료실

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

패밀리사이트에서 회원가입연동 정보

패밀리사이트에서 회원가입연동

본문

서버는 같지만 디비가 틀린 각각의 도메인이 있는 패밀리사이트에서

이미 가입한 회원은 안되지만 아래 방법으로 하면 앞으로 가입할 회원에 대해서는 중복방지도 되면서
한 사이트 아이디로 여러사이트에 로그인할 수 있습니다. 

핵심은 한사이트에서 회원가입하면 나머지 두사이트에도 자동으로 회원가입처리가 되도록하면 됩니다.

즉 1사이트 회원가입이면 2,3사이트에서도 회원가입처리
같은방법으로 2사이트 회원가입이면 1,3 사이트에서도 회원가입처리
                  3사이트 회원가입이면 1,2 사이트에서도 회원가입처리

→ 이렇게 하면 세사이트의 회원디비가 같아지겠지요.(아이디 중복방지)


*(예)한사이트에 회원가입할때 나머지 두사이트에 자동으로 회원가입 처리방법

bbs/register_form_update.php 수정

    // 이메일 인증을 사용하지 않는다면 이메일 인증시간을 바로 넣는다
    if (!$config[cf_use_email_certify])
        $sql .= " , mb_email_certify = '$g4[time_ymdhis]' ";
    sql_query($sql);

의 아래에 추가

사이트1아이디:사이트1의 디비 아이디
사이트1패스:사이트1의 디비 패스워드
---------------------------------------------------------------------<아래부분추가>
    // 회원가입 포인트 부여
    insert_point($mb_id, $config[cf_register_point], "회원가입 축하", '@member', $mb_id, '회원가입');
   
  // 다른사이트 DB 갱신
    $dbcon22=mysql_connect("localhost","사이트1아이디","사이트1패스");
    mysql_select_db("사이트1아이디",$dbcon22);
    mysql_query( $sql, $dbcon22);
    insert_point($mb_id, $config[cf_register_point], "회원가입 축하", '@member', $mb_id, '회원가입');
   
    // 또 다른 사이트 DB 갱신
    $dbcon33=mysql_connect("localhost","사이트2아이디","사이트2패스");
    mysql_select_db("사이트2아이디",$dbcon33);
    mysql_query( $sql, $dbcon33);
-----------------------------------------------------------------------------
// 회원가입 포인트 부여
    insert_point($mb_id, $config[cf_register_point], "회원가입 축하", '@member', $mb_id, '회원가입');

    // 추천인에게 포인트 부여
    if ($config[cf_use_recommend] && $mb_recommend)
        insert_point($mb_recommend, $config[cf_recommend_point], "{$mb_id}의 추천인", '@member', $mb_recommend, "{$mb_id} 추천");

    // 회원님께 메일 발송
    if ($config[cf_email_mb_member])
          .
          .
          .
추천
3

댓글 18개

이 팁은 타사이트의 회원정보를 불러오는 것이 아니라 타사이트에 회원가입하면
현 사이트에 회원가입하는 것과 똑같은 효과를 냅니다. 이 때 현 사이트의 회원정보를 보면 신규회원이 가입 되어 있습니다.

common.php 의

session_save_path("$g4[path]/data/session"); 에서

data/session 폴더도 같은곳으로 맞추어 주시구요.
션션님의 글을보고 전 다른쪽에 응용하고자 하는데요

회원가입시에 다른DB쪽에도 로그인정보 아이디와 비번 아이피 등을 업데이트 시킬려고 합니다.

현재 웹서버와 게임서버를 같이 돌릴려고 하거든요..

두서버의 회원정보를 연동시키고자 해서 질문 합니다..

지금 대충 register_form_update.php 에서 수정을 가하고 있는데

mb_id,mb_password,mb_ip 이필드들을 레코드를 가져다가

game이라는 db의 account라는 테이블에서

mb_id=login,  mb_password=password, mb_ip=ip 라는 필드에 동시에

갱신을 시키려 합니다.. 지금까지 수정한 소스한번 봐주시고 문제점을 봐주세요

//l1j(게임서버) 연동
  $sql2 = " insert into accounts
set login = '$mb_id',
                password = '".sql_password($mb_password)."',
lastactive = '0'
accesslevel = '0'
                    mb_ip = '$_SERVER[REMOTE_ADDR]' ";
// 이메일 인증을 사용하지 않는다면 이메일 인증시간을 바로 넣는다
    if (!$config[cf_use_email_certify])
        $sql .= " , mb_email_certify = '$g4[time_ymdhis]' ";
    sql_query($sql);

// l1j(게임DB) 갱신
$dbconnl1j=mysql_connect("localhost","디비ID","디비비번");
mysql_select_db("l1jdb","$dbconnl1j");
mysql_query( $sql2, $dbconnl1j);
'회원가입시에 다른DB쪽에도 로그인정보 아이디와 비번 아이피 등을 업데이트 시킬려고 합니다. '
에서 이 말의 뜻이 정확히 어떤 뜻인지 모르겠습니다.

위의 팁자체로 게임서버에 아이디와 비번등 회원정보가 업데이트 되는경우이거든요.

만약 수정해준다면
$dbcon22=mysql_connect("localhost","게임db","게임db패스"); //$dbcon22는 적당한이름으로 수정가능

    mysql_select_db("게임db",$dbcon22);
    mysql_query( $sql, $dbcon22); //$sql은 수정하지마시길..
    insert_point($mb_id, $config[cf_register_point], "회원가입 축하", '@member', $mb_id, '회원가입'); //이부분은 업데이트시 포인트가 0 이되지 않도록 가입포인트를 넣어주는것입니다.

혹시 안된다면 위의 전제가 같은 서버인경우이므로 호스트업체가 다른 서버인 경우는 테스트하지 못했습니다.
위에
common.php 의
session_save_path("$g4[path]/data/session"); 에서
data/session 폴더도 같은곳으로 맞추어 주시구요.

이건 무슨뜻인가요?
자세히 설명 좀 부탁드립니다.
연동은 되는데 문자셋오류가 납니다. ㅠㅠ
서버자체는 utf-8인데 아이디와 닉네임의 문자셋이 euc-kr로 들어오는데..
이것좀 해결해주실분 안계실까요?ㅠㅠ
전체 18 |RSS
그누4 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT