금지된 닉네임 처리
본문
안녕하세요. 사이트에서 닉네임을 설정할 수 있도록 해놨습니다.
닉네임은 input에 넣어 설정합니다.
form 전송하면 현재 페이지에서 받아서 닉네임 체크하여 처리합니다.
아래와 같이 if 문속에 하나하나 체크하니 너무 길어져서... 금지닉네임을 10개 정도 하려니 엄청 기네요. array 에 넣어 처리할 수 있는 방법 또는 조금 더 간단하게 체크하는 방법 없을까요?
조언부탁드려도 될까요?
감사합니다.
<?php
if( $_POST['nickname'] != '바보' || $_POST['nickname'] != '멍청이' || $_POST['nickname'] != '병신' ){
//금지 닉네임 사용금지 경고
} else{
닉네임 DB에 업데이트
}
?>
<?php get_header(); ?>
<form action="현재페이지">
<input type="text" name="nickname" />
<input type="submit">
</form>
<?php get_footer(); ?>
답변 2
※ http://php.net/manual/kr/function.in-array.php
$arr_tmp = array('바보', '멍청이', '병신');
if (in_array($_POST['nickname'], $arr_tmp)) {
//금지 닉네임 사용금지 경고
}
그누 회원 가입 라이브러리 보면
function reserve_mb_nick($reg_mb_nick)
{
global $config;
if (preg_match("/[\,]?{$reg_mb_nick}/i", $config['cf_prohibit_id']))
return "이미 예약된 단어로 사용할 수 없는 닉네임 입니다.";
else
return "";
}
있습니다. 관리자에 금지어 추가 하시고 해당 함수를 이용해보세요
답변을 작성하시기 전에 로그인 해주세요.