로그인 기록 관리[수정 2차] 정보
기타 로그인 기록 관리[수정 2차]첨부파일
본문
위 사진처럼 로그인 시도했던 아이디,아이피 일자, 성공여부 등을 기록해놓게 만들어봤습니다.
로그인 스킨 옆에 새창으로 뛰울수있게 만드시면 좋을거 같습니다.
필요하신분 받아가세요^^
아 참고로 본인 아이디만 보입니다..
(너비는 500 픽셀 지정되있습니다.)
*설치 방법
압축을 해제하신후 sql 파일안에 있는 쿼리를 적용 하신후
나머지는 그냥 그누보드 폴더에 덮어 쒸우시면 됩니다.
*2011.12.23 20:55 이미지 누락되어있어서 재업로드 했습니다.
*2011.12.23 21:05 없는 아이디로 로그인 시도시 기록되지 않고 euc-kr 버전 추가
(백업을 하지않음으로 부터 발생되는 피해는 책임지지 않습니다.)
로그인 스킨 옆에 새창으로 뛰울수있게 만드시면 좋을거 같습니다.
필요하신분 받아가세요^^
아 참고로 본인 아이디만 보입니다..
(너비는 500 픽셀 지정되있습니다.)
*설치 방법
압축을 해제하신후 sql 파일안에 있는 쿼리를 적용 하신후
나머지는 그냥 그누보드 폴더에 덮어 쒸우시면 됩니다.
*2011.12.23 20:55 이미지 누락되어있어서 재업로드 했습니다.
*2011.12.23 21:05 없는 아이디로 로그인 시도시 기록되지 않고 euc-kr 버전 추가
(백업을 하지않음으로 부터 발생되는 피해는 책임지지 않습니다.)
추천
6
6
댓글 전체
오 좋네요. 감사합니다. 캐춫현!~
그런데 한번에 기록이 2개 씩되고 아이디가 기록이 안됩니다.ㅠㅠ
그런데 한번에 기록이 2개 씩되고 아이디가 기록이 안됩니다.ㅠㅠ
제가 테스트 할땐 문제가 안보이는데.. 그누보드 최신버전 이신가요?
혹시 인코딩이 다르신건??
혹시 인코딩이 다르신건??
아 euc kr입니다.^^;
$number = "SELECT max(idx) FROM g4_login_data";
$re=mysql_query($number);
$num=mysql_fetch_row($re);
$idx = $num[0]+1;
$ip=$_SERVER[REMOTE_ADDR];
$query = "INSERT INTO g4_login_data VALUES('$idx','$mb[mb_id]','$ip',now(),'실패')";
sql_query($query);
디비넣고 로긴체크부분에 일단 요부분만 적용을 시켰는데 디비쪽에서 2개까 한꺼번에 들어가 버리네요.
$number = "SELECT max(idx) FROM g4_login_data";
$re=mysql_query($number);
$num=mysql_fetch_row($re);
$idx = $num[0]+1;
$ip=$_SERVER[REMOTE_ADDR];
$query = "INSERT INTO g4_login_data VALUES('$idx','$mb[mb_id]','$ip',now(),'실패')";
sql_query($query);
디비넣고 로긴체크부분에 일단 요부분만 적용을 시켰는데 디비쪽에서 2개까 한꺼번에 들어가 버리네요.
login_check.php 의 25줄인
if (!$mb[mb_id] || (sql_password($mb_password) != $mb[mb_password])) {
바로 밑에
$number = "SELECT max(idx) FROM g4_login_data";
$re=mysql_query($number);
$num=mysql_fetch_row($re);
$idx = $num[0]+1;
$ip=$_SERVER[REMOTE_ADDR];
$query = "INSERT INTO g4_login_data VALUES('$idx','$mb[mb_id]','$ip',now(),'실패')";
sql_query($query);
이렇게 넣으시고요
조금 내려가서
// FLASH XSS 공격에 대응하기 위하여 회원의 고유키를 생성해 놓는다. 관리자에서 검사함 - 110106
set_session('ss_mb_key', md5($mb[mb_datetime] . $_SERVER['REMOTE_ADDR'] . $_SERVER['HTTP_USER_AGENT']));
여기 바로 밑에
$number = "SELECT max(idx) FROM g4_login_data";
$re=mysql_query($number);
$num=mysql_fetch_row($re);
$idx = $num[0]+1;
$ip=$_SERVER[REMOTE_ADDR];
$query = "INSERT INTO g4_login_data VALUES('$idx','$mb[mb_id]','$ip',now(),'성공')";
sql_query($query);
이 코드도 넣으셔야해요
if (!$mb[mb_id] || (sql_password($mb_password) != $mb[mb_password])) {
바로 밑에
$number = "SELECT max(idx) FROM g4_login_data";
$re=mysql_query($number);
$num=mysql_fetch_row($re);
$idx = $num[0]+1;
$ip=$_SERVER[REMOTE_ADDR];
$query = "INSERT INTO g4_login_data VALUES('$idx','$mb[mb_id]','$ip',now(),'실패')";
sql_query($query);
이렇게 넣으시고요
조금 내려가서
// FLASH XSS 공격에 대응하기 위하여 회원의 고유키를 생성해 놓는다. 관리자에서 검사함 - 110106
set_session('ss_mb_key', md5($mb[mb_datetime] . $_SERVER['REMOTE_ADDR'] . $_SERVER['HTTP_USER_AGENT']));
여기 바로 밑에
$number = "SELECT max(idx) FROM g4_login_data";
$re=mysql_query($number);
$num=mysql_fetch_row($re);
$idx = $num[0]+1;
$ip=$_SERVER[REMOTE_ADDR];
$query = "INSERT INTO g4_login_data VALUES('$idx','$mb[mb_id]','$ip',now(),'성공')";
sql_query($query);
이 코드도 넣으셔야해요
감사합니다. 로긴 성공일때도 잘보입니다. 그런데 실패,나성공일때도 쿼리가 2개가 들어가는 문제가 여전히 있어요. ㅠㅠ
저 코드들에서
[내용 삭제]
[내용 삭제]
아이디는 회원일때만 기록이 되네요^^; ㅎㅎ 로그인시도 아이디도 기록되는줄알았네요.ㅋㅋ insert가 2개가 되는것만 해결되면 좋은데..ㅠㅠ 왜 쿼리가 2개 가 들어가는지 몰겄네요.
아무리해봐도 안되요 가끔 랜덤으로 1개씩 제대로 등록되긴해요. 가끔씩~ ㅋㅋ
약간더 간단하게 만들어 보았습니다. 디비를
CREATE TABLE IF NOT EXISTS `g4_login_data` (
`idx` int(11) NOT NULL auto_increment,
`mb_id` varchar(20) NOT NULL default '',
`mb_ip` varchar(255) NOT NULL default '',
`mb_time` varchar(255) NOT NULL default '',
`mb_success` varchar(255) NOT NULL default '',
PRIMARY KEY (`idx`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
이걸로 쓰시고
실패일때
//로그인실패기록
sql_query(" insert g4_login_data set mb_id = '$mb[mb_id]', mb_ip = '$_SERVER[REMOTE_ADDR]', mb_time = '$g4[time_ymdhis]', mb_success = '실패' ");
성공일때
//로그인성공기록
sql_query(" insert g4_login_data set mb_id = '$mb[mb_id]', mb_ip = '$_SERVER[REMOTE_ADDR]', mb_time = '$g4[time_ymdhis]', mb_success = '성공' ");
소스가 간단해 지는 효과? 흐흐..
그러나 한번에 2줄 쿼리 되는건 저만 그런가 봅니다. ㅠㅠ
CREATE TABLE IF NOT EXISTS `g4_login_data` (
`idx` int(11) NOT NULL auto_increment,
`mb_id` varchar(20) NOT NULL default '',
`mb_ip` varchar(255) NOT NULL default '',
`mb_time` varchar(255) NOT NULL default '',
`mb_success` varchar(255) NOT NULL default '',
PRIMARY KEY (`idx`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
이걸로 쓰시고
실패일때
//로그인실패기록
sql_query(" insert g4_login_data set mb_id = '$mb[mb_id]', mb_ip = '$_SERVER[REMOTE_ADDR]', mb_time = '$g4[time_ymdhis]', mb_success = '실패' ");
성공일때
//로그인성공기록
sql_query(" insert g4_login_data set mb_id = '$mb[mb_id]', mb_ip = '$_SERVER[REMOTE_ADDR]', mb_time = '$g4[time_ymdhis]', mb_success = '성공' ");
소스가 간단해 지는 효과? 흐흐..
그러나 한번에 2줄 쿼리 되는건 저만 그런가 봅니다. ㅠㅠ
저거 하면
한 필드 삭제되고 다음 쿼리 들어올때 삭제된 번호 는 안찍히던데..
이건 뭐 삭제될일이 없으니 저거 써도 되겠네요 ^^
호이님 쪽지읽어보세요 ㅠ
한 필드 삭제되고 다음 쿼리 들어올때 삭제된 번호 는 안찍히던데..
이건 뭐 삭제될일이 없으니 저거 써도 되겠네요 ^^
호이님 쪽지읽어보세요 ㅠ
오잉 그런가요? 전 무조건 순서대로 들어오던디.. 이상허네..ㅠㅠ
오호..저런것입니까 ㅋㅅㅋ..색다른 디자인이군..!ㅋ
2번 쿼리 들어가는건 제 로그인 스킨 문제 였습니다. ㅠㅠ. 다른분들은 잘 적용될꺼에요 JMoon님 감사합니다.
제가 배추빌더 사용중인데 동일한 문제가 있는 듯 합니다. ㅠㅠ
로그인 스킨 어떤 부분을 수정해야 하는지 조언 부탁드려요.^^
로그인 스킨 어떤 부분을 수정해야 하는지 조언 부탁드려요.^^
잘쓰겠습니다^^
멋지네요. 잘쓸께요
유용하네요^^
익스8에서는 로긴성공시 2회 기록되며
크롬에서는 로긴성공시 1회 기록으로 잘 됩니다.
그리고 두 브라우저 모두~ 비번 틀릴시 실패기록이 남지 않는데... 어떤 문제인가요?? ㅠㅠ
크롬에서는 로긴성공시 1회 기록으로 잘 됩니다.
그리고 두 브라우저 모두~ 비번 틀릴시 실패기록이 남지 않는데... 어떤 문제인가요?? ㅠㅠ
이 프로그램은 login_check.php를 접근할때 기록되는 방식입니다...
어떤 이유로 ie에서 로그인할때 login_check.php를 2번 접근하게 되는거 같습니다.
한번 로그인 스킨을 확인 해보시는것이 좋으실듯 합니다.
어떤 이유로 ie에서 로그인할때 login_check.php를 2번 접근하게 되는거 같습니다.
한번 로그인 스킨을 확인 해보시는것이 좋으실듯 합니다.
로그인 기록 관리[수정 2차]
로그인 기록 관리[수정 2차] 내가 찾던 거였는데 감사합니다 잘쓸께요
수고하셨습니다. 좋은자료 감사합니다.