HTML5 필수 및 패턴은 보안 기능이 아닙니다.

HTML5에서는 required 속성을 제공하여 양식을 보내기 전에 특정 필드가 채워졌는지 확인할 수 있습니다.

<input id="tac" required name="tac" type="checkbox">
<label for="tac">I have read the terms and conditions</label>


더 나아가 전송되기 전에 필드의 값이 준수해야 하는 pattern를 정의할 수 있습니다. 예를 들어, 다음은 대문자 또는 소문자 a에서 z까지의 항목만 허용합니다.

<label for="pkey">Product key (A-Z only)</label>
<input id="pkey" required name="id" pattern="[a-z|A-Z]+">


MDN에서 자세한 내용을 읽고 더 많은 예를 볼 수 있습니다.

이것은 브라우저가 사용자에게 피드백을 제공하도록 하는 훌륭한 방법이지만 보안 조치는 아닙니다. 이 기능에만 의존하는 모든 양식은 Developer Tools Console을 사용하고 JavaScript를 사용하여 양식을 제출하면 실패할 수 있습니다.

$('form').submit()


여기에서 실제로 볼 수 있습니다.



어쨌든 서버 측에서 들어오는 데이터의 유효성을 항상 확인하고 필요한 경우 데이터를 삭제해야 합니다.

좋은 웹페이지 즐겨찾기