안녕하세요. 

사이트를 만들고 나서, 오픈하였는데

사용자들이 소셜로그인 기능을 얘기하여 추가하던 도중 

이런 에러를 만났습니다.

 

20220207_203703.png.jpg

 

컬럼쪽 에러인거 같은데, 서버쪽에 에러가 남지않고있어서 환장하고있습니다 하하.. 

 

이와중에 구글은 또 잘 되어서 더욱 미궁에 빠졌습니다..^^;;

 

혹시 비슷한 경험 하신분이 계신가요?

 

감사합니다. 

 

사이트는 https://pu.ngen.kr/ 으로 게임커뮤니티 사이트이고, 

현재 소셜로그인은 기능을 꺼두었습니다. 

 

TAG •
  • profile

    20220207_212510.png.jpg

    queries에서 네임을 뻈더니 이번엔 default value 에러가 나네요..... 

  • profile

    해결하긴했는데 이 방법이 옳은 방법인지는 확실치가 않네요. 

    루트커우즈는 

    DB의 Name이 Notnull로 설정되어있고 

    InsertMemberSns.xml 파일에서 Name Column을 notnull로 지정해두고 있었어요. 

    But. 요즘은 이메일만 받아서 가입이 가능한 상태다보니, 이름을 가지지않아서 소셜 인증때 이메일만 적용해서 값들이 비어있어 DB쪽에서 뿜어낸 이슈였습니다. 

     

    해결방법1. DB의 컬럼, XML파일을 수정합니다. 

    STEP1.DB의 컬럼 수정

    DB Table : {Prefix}_socialxe

    Column : name

    Action : not null의 속성을 null로 변경합니다.

    alter table {Prefix}_socialxe modify name varchar(40) not null;

    ※ {Prefix}는 라이믹스를 처음 설치하실때 테이블 프리픽스를 입력하셨을거에요. 그 값으로 해주셔야합니다.

     

    STEP2.XML 속성 변경

    Path : /modules/socialxe/queries/insertMemberSns.xml

    Action : insertMemberSns.xml 파일을 변경해야합니다.

    <column name="name" var="name" notnull="notnull"/>

    위 상태의 값을 아래의 값으로 변경합니다. 

    <column name="name" var="name" />

     

    해결방법2. naver.lib.php를 수정합니다. 

    Path : modules/socialxe/libs/naver.lib.php

    Action : //이름 부분부터 수정을합니다.

    // 이메일 주소
    if($profile['email'])
    {
    $this->setEmail($profile['email']);
    }
    
    // ID
    $this->setId($profile['id']);
    
    // 이름 (닉네임이 없다면 이름으로 설정, 이름->이름, 닉네임->닉네임, 둘다없으면 랜덤문자5개)
    if($profile['name'])
    {
    $this->setName($profile['name']);
    }
    elseif ($profile['nickname'])
    {
    $this->setName($profile['nickname']);
    }
    else
    {
    $this->setName(chr(rand(65,90)) . chr(rand(65,90)) . chr(rand(65,90)) . chr(rand(65,90)) . chr(rand(65,90)));
    }

    수정한 방법은 IF구문을 수정한 것입니다. 

    첫 번째 조건은 이름이 있나? 

    없다면 닉네임은 있나? 

    없다면 랜덤문자5개 생성

    으로 돌아가는 로직이에요. 

    저는 둘다 적용해서 현재 정상적으로 받아지고는 있는데 아직 보안검수가 끝나지 않아서 켜두진 못했네요.

    저와 비슷한 이슈가 있으신분들은 사용해보세요! 

     

    감사합니다. 

  • profile profile
    말씀하신대로 그렇게 수정하시면 됩니다.

    라이믹스 2.1 이 언제 출시될지 모르겠지만, 추후 라이믹스 2.1이 출시된다면 해당 버전을 이용하시는 것이 좀 더 좋으실지도 모르겠네요 ㅎㅎ

    그건 제가 작업하면서 관련 부분 버그는 최대한 다 수정해두고 있습니다 :)
  • profile profile

    앗 감사합니다! 람보님!  ㅎㅎ