글자수 제한에 관해서 질문드립니다.
본문
<div class = "bo_w_info write_div">
<label for="wr_1" class="sound_only">전화번호<strong>필수</strong></label>
<?php
$hp = explode("-",$write['wr_1']); //연락처
?>
<tr>
<td>
<input type="text" name="hp[0]" value="<?php echo $hp[0] ?>" class="frm_input" size="10" maxlength="3" placeholder="010" required class="frm_input required">
<input type="text" name="hp[1]" value="<?php echo $hp[1] ?>" class="frm_input" size="10" maxlength="4" placeholder="0000" required class="frm_input required">
<input type="text" name="hp[2]" value="<?php echo $hp[2] ?>" class="frm_input" size="10" maxlength="4" placeholder="0000" required class="frm_input required">
</td>
</tr>
</div>
이렇게 3-4-4 글자로 입력하게끔 설정을 해 준 상태입니다.
이렇게 웹브라우저 상에서 검사기능으로 해당 자릿수를 변경해주면
변경해준 만큼 자기 맘대로 입력이 가능해지게 바뀌더라구요
변경으로 인하여 앞자리가 6자까지 들어간 상태입니다.
글 작성 완료후 출력시에도 값을 넣은 그대로 출력이 되네요
어떤식으로 해결해야 할까요..?
!-->답변 2
유저의 비정상적 액션까지는 굳이 막지 않아도 됩니다.
정책적인 성격의 문제입니다.
대부분의 사이트들은 해당 문제에 대하여 처리를 않는 경우가 많습니다.
물론 구매/결제와 같이 보안이 중요한 부분에서는, 서버에서도 체크를 해주는 것이 거의 필수지만,
위의 경우와 같은 단순 입력 정보인 경우에는, 이러한 부분까지 고려하여 처리하지 않아도 됩니다.
꼭 처리하고 싶다면, 처리 페이지에서 자리수 체크를 하는 방법도 있습니다.
write_update.head.skin.php
if (strlen($hp[0]) > 3)
alert('자리수가 맞지 않습니다.');
query로 글자수 제한하셔도 되고 아니면 값을 action 으로 던질때 제한숫자대로 받으시면 되요
답변을 작성하시기 전에 로그인 해주세요.