회원가입시 아이피....
본문
회원가입시 아이피 한개만 가입시키고 싶은데요....
if ($w == '') { // 회원가입시
$row = sql_fetch( "select count(mb_ip) as ip_cnt from {$g5['member_table']} where mb_ip = '{$_SERVER['REMOTE_ADDR']}'");
if($row['ip_cnt'] > 1) // 한아이피당 2개이상일 경우
alert('한 아이피에서 1번 이상 회원 가입 할 수 업습니다.'); // 적당한 안내문구
}
register_form_update.php에 위에 소스를 넣었는데...
한 아이피에서 1번 이상 회원 가입 할 수 업습니다라고 문구는 나오는데...
회원가입은 되어집니다...
어떻게 해야 한아아피당 회원가입한개만 할수있을까요?
알려주시면 감사하겠습니다....
답변 3
넣은 위치가 SQL DB에 저장처리 이후가 아닌지 확인해보셔야 합니다.
근데 한 IP당 한번의 가입제한은 굉장히 오류가 심한것이
유동IP인경우에 문제가 발생할 수 있습니다.
A라는 사람이 1.11.111.111 에서 가입을 했는데
이 아이피가 유동이라 B라는 사람에게 언젠가 잡혔다고 가정한다면....
난감한 상황이 아닐수가 없겠는데요
또하나의 경우 아이피대역으로 처리하지 않을경우 아이피 뒷자리가 변경되면 여지없이 가입될수도 있겠습니다.
여러가지 경우의 수를 놓고 작업하시는게 좋겠네요^^
P.S 그누보드의 내장함수인 alert 을 이용하면 해당 문구를 출력후 특별히 URL을 지정하지 않은경우
바로 전단계로 이동되거든요
그럼에도 질문내용과 같이 가입처리가 된경우라면
이는 반드시 SQL에 기록하는 부분 이후에 넣으신경우일겁니다.
확인해보세요
if($row['ip_cnt'] > 1) // 한아이피당 2개이상일 경우
alert('한 아이피에서 1번 이상 회원 가입 할 수 업습니다.'); // 적당한 안내문구
return false;
}
이렇게하면 안되나요???
alert("문구", URL);
문구가 출력이 된 뒤, 설정한 URL로 빼주셔야지요