Computer >> 컴퓨터 >  >> 프로그래밍 >> HTML

HTML formenctype 속성이란? 사용 방법과 속성값 총정리

formenctype 속성이란?

formenctype 속성은 폼(form) 데이터가 서버로 전송될 때 데이터를 어떤 방식으로 인코딩할지 지정하는 HTML 속성입니다. 이 속성은 HTML5에서 새롭게 도입되었으며, <input> 요소의 타입이 submit 또는 image일 때만 사용할 수 있습니다.

참고로 formenctype 속성을 지정하면 <form> 태그에 설정된 기본 enctype 속성 값을 덮어쓰게(override) 됩니다. 즉, 폼 전체의 인코딩 방식과 관계없이 특정 제출 버튼에 대해서만 다른 인코딩 방식을 적용하고 싶을 때 유용합니다.

formenctype 속성값 종류

formenctype 속성에 사용할 수 있는 값은 다음 세 가지입니다.

번호속성값 및 설명
1application/x-www-form-urlencoded
기본값(default)입니다. 모든 문자가 전송되기 전에 인코딩됩니다.
2multipart/form-data
어떠한 문자도 인코딩하지 않습니다. 주로 파일 업로드가 포함된 폼에서 사용됩니다.
3text/plain
공백(space)은 '+' 기호로 변환되지만, 특수 문자는 인코딩되지 않습니다.

사용 예제

아래 예제 코드를 직접 실행해 보면 HTML에서 formenctype 속성을 사용하는 방법을 쉽게 이해할 수 있습니다.

<!DOCTYPE html>
<html>
   <head>
      <title>HTML formenctype 속성</title>
   </head>

   <body>
      <form action="" method="post">
         이름 <input type="text" name="name"/><br>
         <input type="submit" formenctype="multipart/form-data" value="제출">
      </form>
   </body>
</html>

코드 설명

위 예제에서 제출(submit) 버튼에는 formenctype="multipart/form-data"가 지정되어 있습니다. 따라서 이 버튼을 클릭해 폼을 전송하면, 폼의 기본 인코딩 방식과 무관하게 해당 데이터는 multipart/form-data 방식으로 서버에 전달됩니다.

정리

  • formenctype은 폼 데이터의 인코딩 방식을 지정하는 HTML5 속성입니다.
  • <input type="submit"> 또는 <input type="image">에서만 사용할 수 있습니다.
  • 속성값은 application/x-www-form-urlencoded(기본값), multipart/form-data, text/plain 세 가지입니다.
  • 폼 태그의 enctype 값보다 우선적으로 적용됩니다.