테스트 사이트 - 개발 중인 베타 버전입니다

금지된 닉네임 처리 채택완료

JinyeongJang 7년 전 조회 5,104

안녕하세요. 사이트에서 닉네임을 설정할 수 있도록 해놨습니다. 

 

닉네임은 input에 넣어 설정합니다. 

form 전송하면 현재 페이지에서 받아서 닉네임 체크하여 처리합니다. 

아래와 같이 if 문속에 하나하나 체크하니 너무 길어져서... 금지닉네임을 10개 정도 하려니 엄청 기네요.  array 에 넣어 처리할 수 있는 방법 또는 조금 더 간단하게 체크하는 방법 없을까요? 

 

조언부탁드려도 될까요?

감사합니다.

 

</p>

<p><?php </p>

<p>if( $_POST['nickname'] != '바보' || $_POST['nickname'] != '멍청이' || $_POST['nickname'] != '병신'  ){

        //금지 닉네임 사용금지 경고

 } else{</p>

<p>       닉네임 DB에 업데이트</p>

<p>}</p>

<p>?></p>

<p> </p>

<p><?php get_header(); ?></p>

<p> </p>

<p><form action="현재페이지"></p>

<p><input type="text" name="nickname" /></p>

<p><input type="submit"></p>

<p></form></p>

<p> </p>

<p><?php get_footer(); ?></p>

<p> </p>

<p>

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
7년 전

※ http://php.net/manual/kr/function.in-array.php

</p>

<p>$arr_tmp = array('바보', '멍청이', '병신');</p>

<p>if (in_array($_POST['nickname'], $arr_tmp)) {</p>

<p>  //금지 닉네임 사용금지 경고</p>

<p>}</p>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

J
JinyeongJang
7년 전
선생님 감사합니다. 좋은 한주 되세요.

댓글을 작성하려면 로그인이 필요합니다.

7년 전

그누 회원 가입 라이브러리 보면

function reserve_mb_nick($reg_mb_nick) {     global $config;     if (preg_match("/[\,]?{$reg_mb_nick}/i", $config['cf_prohibit_id']))         return "이미 예약된 단어로 사용할 수 없는 닉네임 입니다.";     else         return ""; }

있습니다. 관리자에 금지어 추가 하시고 해당 함수를 이용해보세요

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

J
JinyeongJang
7년 전
ㅠ.ㅜ 제가 그누보드를 사용하지 않고 워드프레스를 사용하고 있어서요..하하..ㅠ

써 주신 코드에서,

if (preg_match("/[\,]?{$reg_mb_nick}/i", $config['cf_prohibit_id']))

$reg_mb_nick 대신 $_POST['nickname']

'cf_prohibit_id' 자리에 '바보', '멍청이','..' 이렇게 적으면 될까요?

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인