로그인 기록 관리[수정 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 버전 추가
(백업을 하지않음으로 부터 발생되는 피해는 책임지지 않습니다.)
첨부파일
|
댓글을 작성하시려면 로그인이 필요합니다.
그누4 스킨
5,847건스킨의 저작권은 해당 스킨 제작자님께 있으며, 그누보드의 저작권과 다를 수 있습니다. 스킨 다운로드시 좋아요와 감사의 코멘트를 남기시면 제작자에게 큰 힘이됩니다. ^^y 그누보드와 관련이 있지만 스킨과 빌더가 아니면 플러그인 게시판에 올려주세요.
댓글 23개
그런데 한번에 기록이 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개까 한꺼번에 들어가 버리네요.
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);
이 코드도 넣으셔야해요
[내용 삭제]
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줄 쿼리 되는건 저만 그런가 봅니다. ㅠㅠ
한 필드 삭제되고 다음 쿼리 들어올때 삭제된 번호 는 안찍히던데..
이건 뭐 삭제될일이 없으니 저거 써도 되겠네요 ^^
호이님 쪽지읽어보세요 ㅠ
로그인 스킨 어떤 부분을 수정해야 하는지 조언 부탁드려요.^^
크롬에서는 로긴성공시 1회 기록으로 잘 됩니다.
그리고 두 브라우저 모두~ 비번 틀릴시 실패기록이 남지 않는데... 어떤 문제인가요?? ㅠㅠ
어떤 이유로 ie에서 로그인할때 login_check.php를 2번 접근하게 되는거 같습니다.
한번 로그인 스킨을 확인 해보시는것이 좋으실듯 합니다.