첫로그인 포인트..^^ > 그누3질답

그누3질답

첫로그인 포인트..^^ 정보

그누보드 첫로그인 포인트..^^

본문

// 3.34
// 자동로그인 부분에서 첫로그인에 포인트 부여하던것을 로그인중일때로 변경하면서 코드도 대폭 수정하였습니다.
if ($_SESSION[ss_mb_id]) // 로그인중이라면
{
    $member = get_member($_SESSION[ss_mb_id]);

    // 오늘 처음 로그인 이라면
    if (substr($member[mb_today_login], 0, 10) != $today)
    {
        // 하루에 누적받을 수 있는 포인트 필드를 지우고, 해당 회원의 접근일시와 IP 를 저장
        $sql = " update $cfg[table_member]
                    set mb_today_point = '0',
                        mb_today_login = '$now',
                        mb_login_ip = '$_SERVER[REMOTE_ADDR]'
                  where mb_id = '$member[mb_id]' ";
        sql_query($sql);

        // 첫 로그인 포인트 지급
        insert_point($member[mb_id], $default[de_login_point], "$today 첫로그인");
    }
}
else
{
  중략...                }
            }
            // $row 배열변수 해제
            unset($row);
        }
    }
    // 자동로그인 end ---------------------------------------
}

상기 소스는 index.php 파일의 일부입니다.
제가 운영하는 그누보드에서 어떤 이유인지 모르겠지만 회원들이 로그인을 시도할 때,
이부분을 건너뛰는지


      // 하루에 누적받을 수 있는 포인트 필드를 지우고, 해당 회원의 접근일시와 IP 를 저장
        $sql = " update $cfg[table_member]
                    set mb_today_point = '0',
                        mb_today_login = '$now',
                        mb_login_ip = '$_SERVER[REMOTE_ADDR]'
                  where mb_id = '$member[mb_id]' ";
        sql_query($sql);

        // 첫 로그인 포인트 지급
        insert_point($member[mb_id], $default[de_login_point], "$today 첫로그인");
    }

 바로 위 소스부분에서 set mb_today_point = '0',
insert_point($member[mb_id], $default[de_login_point], "$today 첫로그인");
부분이 업데이트 되지 않습니다.

첫로그인시 포인트가 주어지는 부분은 이부분인 것 같으며, 다른 곳은 없다고 생각되는데
발생할 수 있는 가능한 상황이 무엇일까요?

 mb_today_point 이 부분도 0 으로 초기화 되지 않는데..

mb_today_login  이 부분은 최종 로그인으로 기록이 되어 있습니다.
 
 ^^

 궁금,,난처,,애매...합니다...

추측컨데..
mb_today_login 이 변수가 위 함수에 도달하기 전에 더 먼저 오늘 날짜 값이 들어간다는
이야기 같은데..

혹시..로그인시..순서가 어느 파일 순인지도 궁금합니다.
  • 복사

댓글 전체

노트북에 깔린 윈도로 리눅스에 있는 그누를 통째로 옮겨 실험을 해보았어요.

일일이 날짜를 변경하면서 실험을 해보니..로그인 상태에서 날짜를 변경하면 리프레쉬될때 자동으로 포인트가

올라갔습니다.

그런데, 로그아웃하고 날짜를 변경하고 다시 로그인하면 첫로그 포인트가 올라가지 않습니다.

즉, 어쩌다가 어떤 회원 포인트를 보면 로그인포인트가 있어서 왜 불규칙 한가 했더니 그 회원은

새벽 12시 시점에 접속되어 있는 상태였다는 것이 추측됩니다.

로그아웃하고 첫로그인할 때는 첫로그인 포인트가 작동하지 않는다는 것이죠..

흐흐.왜 그럴까요..

아니면..소스를 추가하게 알려주세요..
해결 했어요.^^

멤버 스킨에 이런 코드가 들어 있지 않겠어요..4시간 걸렸네요.이것 찾아내느라...헐..힘들당..

<?
// 자신만의 코드를 넣어주세요.
 $sql = " update $cfg[table_member] set mb_today_login = '$now' where mb_id = '$mb_id' ";
 sql_query($sql); 

요게 왜 들어 갔는지...ㅋ...
© SIRSOFT
현재 페이지 제일 처음으로