이메일로 로그인하기 정보
이메일로 로그인하기본문
그누 소스를 크게 수정하지 않고 bbs/login_check.php하고 skin폴더의 register_form.skin.php 정도 수정하면 이메일로 회원가입 및 로그인하기가 되지 않을까 해서 올려봅니다.
이렇게 하면 이메일로 회원가입되는 것처럼보이고, 고유아이디가 있으니 이메일을 나중에 변경도 가능할 거 같아요.
1. skin폴더의 register_form.skin.php에서 아이디 부분을 hidden으로 감추고 아이디는 무작위로 생성하게 만들면 됩니다.
2. bbs/login_check.php 파일에서
$mb_id = isset($_POST['mb_id']) ? trim($_POST['mb_id']) : '';
$mb_password = isset($_POST['mb_password']) ? trim($_POST['mb_password']) : '';
이거를 아래로 대체합니다.
// 이메일 형식 확인
if (!preg_match('/([0-9a-zA-Z_-]+)@([0-9a-zA-Z_-]+)\.([0-9a-zA-Z_-]+)/', $_POST['mb_id']));
// 이메일이 일치하는 회원 mb_id 가져오기
$temp = sql_fetch("select mb_id from {$g5['member_table']} where mb_email = '{$_POST['mb_id']}'");
// 없으면 에러
if(!$temp) alert('가입된 회원이 아니거나 패스워드가 틀립니다.\\n패스워드는 대소문자를 구분합니다.');
$mb_id = $temp['mb_id'];
$mb_password = isset($_POST['mb_password']) ? trim($_POST['mb_password']) : '';
unset($temp); // 임시변수 삭제
3. 세부적으로 혹 아이디가 보이는 페이지가 있다면 감추거나 이메일을 노출시켜 줍니다.
예를들면 회원정보 수정 같은거를 누려면 아이디가 보이는데, 감추거나 이메일로 노출하면 될 듯 합니다.
3