회원가입 소스코드 오류 질문입니다.
본문
https://sir.kr/qa/300665?page=1&unanswered=0
해당 질문의 연장선에 있는 질문입니다.
register_form.skin.php 에서 닉네임을 적을 때 폼 옆에 버튼을 하나 두고
register.lib.php 파일을 호출해서 실시간으로 유효성(?) 검사를 하는데요.
register.lib.php ////////////////////
function mb_str_split($str){
$ret = array();
for ($i=0; $i<mb_strlen($str, "utf-8"); $i++){
array_push($ret, mb_substr($str, $i, 1, "utf-8"));
}
return $ret;
}
function valid_mb_nick($reg_mb_nick)
{
$arr = mb_str_split($reg_mb_nick);
foreach ($arr as $str){
print_r($str);
if(preg_match("`[ㄱ-ㅎ]`",$str) and !preg_match("`[가-힣]+`u",$str)){
return '한글을 완성해주세요';
}
}
if (!check_string($reg_mb_nick, G5_HANGUL + G5_ALPHABETIC + G5_NUMERIC))
return "닉네임은 공백없이 한글, 영문, 숫자만 입력 가능합니다.";
else
return "";
}
////////////////////
register.lib.php 중 이 소스를 호출합니다.
근데 회원가입 버튼을 누르면 폼에 적어둔 닉네임만 알럿으로 뜨고 페이지가 넘어가질 않습니다.
회원가입 눌러봐야 계속 해당 닉네임만 알럿으로 뜨네요.
어디를 고쳐야 회원가입 다음 페이지로 넘어갈까요? ㅠㅜ
답변 1
function valid_mb_nick($reg_mb_nick)
{
$arr = mb_str_split($reg_mb_nick);
foreach ($arr as $str){
print_r($str);
if(preg_match("`[ㄱ-ㅎ]`",$str) and !preg_match("`[가-힣]+`u",$str)){
return '한글을 완성해주세요';
}
}
if (!check_string($reg_mb_nick, G5_HANGUL + G5_ALPHABETIC + G5_NUMERIC))
return "닉네임은 공백없이 한글, 영문, 숫자만 입력 가능합니다.";
else
return "";
}
해당 출력하는 부분을 삭제처리하세요.