포럼

 

제로보드시절 사이트 로그인 시 얼마만에 접속했다는 메시지를 띄우는 기능을 만들어서 사용했습니다.

 

XE에서도 있었으면 좋겠다라는 생각으로 애드온 개발을 시작하지만..

 

생각지 못한 난관에 부딪히고 맙니다..

 

로그인 처리는 member 모듈에서 doLogin() 함수를 이용하여 처리하는데...

 

이 부분이 실행되기전이나 안으로 침투(?)할 방법이 없었습니다....(제가 실력이 부족해서 모르는 것일 수도.ㅎ.ㅎ)

 

그래서 완전 포기하고 잊고 지내고 있었습니다.

 

그러던 중  DRAWHOLIC님께서 최근 로그인 시간이 나왔으면 좋겠다라는 의견을 보고

 

개인적으로 얼마만에 로그인했는지 체크해주는... 그런 애드온을 만들어보려 했으나,

로그인하는 한 시점을 잡지 못해서 포기했습니다...

 

라는 댓글을 달았습니다.

 

말그대로 시점을 못잡아서 ... 문제였는데...

 

왜냐면 doLogin이 실행되면 바로 로그인 시간을 갱신하기 때문이지요...

 

그러다가 완전히 다른 쪽으로 생각을 해봤습니다...!

 

어차피 로그인할 때 ID는 입력하니까!!

 

로그인이 실행되기 전에 id 값을 기준으로 lastlogin 을 구한 후 세션으로 저장하면 되지 않을까?!

 

기본적으로 폼필드로 넘어온 값은 $_GET['필드명'] 이나 Context::get('필드명');으로 불러올 수 있습니다.

 

그래서 id값을 받아서 query를 돌려서 lastlogin 값을 우선 변수로 할당합니다.

 

하지만 로그인이 실패했을 경우에는 저장할 필요가 없기 때문에

 

그냥 그대로 리턴해버리고...로그인이 성공했을 경우 아까 저장했던 변수를 세션으로 저장합니다.

 

 

로그인 성공여부를 확인하는 방법은....

 

다음과 같은 포지션을 잡고

 

if($called_position == 'after_module_proc' && Context::get('act') == 'procMemberLogin'){

 

}

 

$output->error 값이 0이면 로그인 성공 0이 아니면 기타 에러... 입니다..(로그인실패)

 

 

이런식으로 하니 성공합니다..!

 

하지만... 개인적으로는 모르겠습니다.

 

저는 이쪽에 전문가가 아니다보니... 로그인 시도시마다 디비 쿼리를 날리기 때문에... 어떤 상황이 벌어질 지는 모르겠네요..

그래서 쿼리 자체는 lastlogin만 받아오도록 해놔서... 딱히 문제가 되진 않을 거라 생각은 됩니다만...

 

 

네.. 아무튼... 그 외에 이전 시간 정보를 출력하기 위해 별도로 세션을 할당해놨고..(추가기능)

 

이전 접속 시간에 따라 알림창을 띄울 건지 설정도 추가해봤습니다...

 

 

아무튼 생각을 조금 바꾸면 이런 것도 가능하구나... 라는 걸 알게된 계기였던 것 같습니다.

글쓴이 제목 최종 글
불편한몸매 게시판 확장변수 입력에 대한 오류  
해커다 일일방문 5000IP/5만pv 에서 cpu100% [12] 2011.11.01 by tobor
roks821 Core 1.5.0.8 문제점 - 해결완료 -_- [11] file 2011.11.01 by 코뿔소2020
채이진 판매자 상품 위젯관련 문의드립니다.  
카르마 1.5 : 컬럼을 삭제할 필요까지 있었을까요??? [2] 2011.11.01 by yank
휘즈 1.5.0.8 업데이트 완료 [2] 2011.11.01 by 휘즈
Community 9월 28일 이후... XE 구글 프로젝트 [2] 2020.03.14 by 푸하라
해커다 SiteMap 생성하는 모듈이 있나요? [2] 2011.11.01 by 해커다
라펠 1.5.X로 업데이트 필요한가요? [1] 2011.11.01 by 쏘프티
스마트XE 소통의 부재 / 간단한 문제 해결 방법 [5] 2011.11.01 by 김휘종
푸하라 속도때문에 궁금증.... [6] 2011.11.01 by ForHanbi
가브리엘조 RSS 게시판 업데이터 모듈에서 [1] 2011.11.01 by 빅송
GPMz 1.5에서는 관리자 페이지로 넘어가는 시간이 많이 걸립니다  
너떠낙 XE는 모바일에서의 파일첨부/모바일에서의 쪽지기능을 [1] 2011.11.01 by criuce
너떠낙 XE 1.4.X에서 1.5.X로 업데이트 이후 회원가입폼,회원정보수정폼  
ForHanbi XE 개발팀 괴롭히는 방법...  
난다뚜이 xe오류 제안 입니다 [2] 2011.10.31 by 난다뚜이
김성동(AcroEdit) 페이지를 수정할 때 마다 \ 문자가 중간중간에 삽입되네요.... file  
zero Don't feed the trolls [10] 2011.10.31 by 종스
natura 사용자 포럼 게시판 운영자로서 한마디만 하겠습니다. [8] 2011.10.31 by 푸하라