회원가입시 이름을 영문으로 가입되게 하려면..

회원가입시 이름을 영문으로 가입되게 하려면..

QA

회원가입시 이름을 영문으로 가입되게 하려면..

답변 2

본문

회원가입시 이름을 영문으로 가입되게 하려면.. 어떻게 수정해야 되나요?
여기에서 어떤걸 수정해야 될까요? 

********
<?
include_once("_common.php");

// echo "한글"로 출력하지 않는 이유는 Ajax 는 euc_kr 에서 한글을 제대로 인식하지 못하기 때문
// 여기에서 영문으로 echo 하여 Request 된 값을 Javascript 에서 한글로 메세지를 출력함

if (preg_match("/[^0-9a-z_]+/i", $reg_mb_id)) {
    echo "110"; // 유효하지 않은 회원아이디
} else if (strlen($reg_mb_id) < 3) {
    //echo "120"; // 3보다 작은 회원아이디
} else {
    $row = sql_fetch(" select count(*) as cnt from $g4[member_table] where mb_id = '$reg_mb_id' ");
    if ($row[cnt]) {
        echo "130"; // 이미 존재하는 회원아이디
    } else {
        if (preg_match("/[\,]?{$reg_mb_id}/i", $config[cf_prohibit_id]))
            echo "140"; // 예약어로 금지된 회원아이디
        else
            echo "000"; // 정상
    }
}
?>

****************


이 질문에 댓글 쓰기 :

답변 2

/bbs/register_form_update.php 파일에서

if (!check_string($mb_name, _G4_HANGUL_))
  alert('이름은 공백없이 한글만 입력 가능합니다.');

이 부분을 아래처럼 수정해보세요

if (!check_string($mb_name, _G4_HANGUL_ + _G4_ALPHABETIC_))
  alert('이름은 공백없이 한글,영문만 입력 가능합니다.');

php한글체크를 위한 정규표현식

$str = "This is 한글" ;

if(preg_match("/[\xA1-\xFE][\xA1-\xFE]/", $str)) //true면 한글이 포함되어 있고 false엄따..

echo"한글이 섞여있네..";

}else{

echo"아니면 말고";

}

한글은  http://infoki.net/717 에서 참조하시고 




 ajax에서 한글이 깨진거에 대해서 답변해드릴께요 
 기존의 한글을 unicode로 변환후 euckr로 처리 하는 형태입니다.


 php 에서 처리 해야할 한글 변환 처리 

    function tostring($text) {
//    return iconv('UTF-16LE', 'UTF-8', chr(hexdec(substr($text[1], 2, 2))).chr(hexdec(substr($text[1], 0, 2))));  // UTF-8 인 경우
    return iconv('UTF-16LE', 'UHC', chr(hexdec(substr($text[1], 2, 2))).chr(hexdec(substr($text[1], 0, 2))));  // EUC-KR 인 경우
    }   
        
    function unescape($text){
        return rawurldecode(preg_replace_callback('/%u([[:alnum:]]{4})/', 'tostring', $text)); 
    }   

$test =  unescape($test);

// ajax가 실행되는 스크립트는 해당 엘리멘탈을 var han = escape(jQuery('#hangul').val());

형태로 하시면 될듯합니다 테스트 한번해보세요 ^^ 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 293
© SIRSOFT
현재 페이지 제일 처음으로