preg_match 변수설정과 관련한 문제입니다~! 채택완료

안녕하세요.

 

<form action="./join_process.php" name='member' method='post'>

    <input type="hidden" name='id' value='test'>

    <table class="stat">

      <tr>

        <th>회원아이디</th>

        <td><input type="text" name='user_id'></td>

      </tr>

    </table>

    <input type="submit" value='회원가입'>

  </form>

 

이렇게 form을 입력하고

$user_id = $_POST['user_id']; 라고 선언했습니다.

 

다만, $user_id로 preg_match에 삽입하면 작동하지 않고(항상 false)

if (!preg_match("/^[a-z0-9 ]*$/", $_POST['user_id'])) {

  error("아이디는 소문자와 숫자만 허용됩니다.");

}

$user_id와 똑같은 $_POST['user_id']를 삽입하면 정상작동합니다..?

 

 

if (!preg_match("/^[a-z0-9]*$/", $user_id)) {

  error("아이디는 소문자와 숫자만 허용됩니다.");

}

 

이렇게 입력하고 있는데.. 왜 안되는지 ㅠ 도움 부탁드립니다!

 

3555609279_1664776815.0605.png

 

답변 2개

채택된 답변
+20 포인트

$_POST['user_id'] 값이 넘어오는지부터 채크해보세요.

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

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

if($user_id=substr($user_id,12)){~~}실행하니 user_id 변수값이 바뀌었었네요 ㅎ;

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

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

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

로그인
🐛 버그신고