"drupal form"을 사용하는 이유 "HTML 양식"으로 모든 것을 할 수 있지만?drupal 양식과 HTML 양식의 차이점
답변
Drupal Form API는 Drupal 사이트에서 양식을 표시, 확인 및 제출하는 표준화 된 방법을 제공합니다. 이 기능을 사용하면 다른 모듈이 사용자가 디자인 한 양식과 상호 작용할 수 있으며 필요한 경우 양식 동작을 수정하기 위해 필드를 추가 또는 변경합니다.
양식 API를 사용하면 테마가 사이트의 그래픽 디자인에 맞는 방식으로 스타일을 지정할 수있는 클래스 및 ID로 완전히 싸인 양식을 출력 할 수 있습니다.
양식 API는 안전한 양식을 출력합니다. 즉, 사용자가 제출 한 양식이 사이트에서 생성되고 악성 데이터를 데이터베이스에 공급하도록 설계된 가짜 페이지의 일부가 아닌지 확인합니다. 유효성 검사 프로세스를 통해 프로그래머는 SQL 주입 및 기타 보안 위협을 피하기 위해 모든 데이터를 삭제할 수 있습니다. 또한 여러 사용자가 동시에 동일한 내용을 수정하지 않도록하는 방법을 제공합니다.
구조화 된 배열로 양식을 작성하면 양식 디자인과 유지 보수가보다 수월해집니다.
다음은 양식 API 사용에 대한 개인적인 사항입니다. 드루팔 (Drupal Form) API 문서에서 this link을 자세히 읽고 싶을 수도 있습니다.
Pamatt's answer 잘 작성되었지만 질문이 매우 건설적/확실하지 않으므로 누락 된 부분을 추가하려고합니다.
왜 우리는 "drupal form"을 사용합니까? "HTML forms"로 모든 것을 할 수 있습니다.
"Drupal forms"같은 것은 없습니다. 그들은 여전히 동일한 <input>
, <select>
등의 태그를 사용하며 모든 것은 여전히 HTML입니다. 그러나 모듈에는이 HTML로 엉망이되지 않고 양식 을 변경할 수있는 기회가 주어집니다. 여기
$form['text'] = array(
'#type' => 'textfield',
'#maxlength' => 120,
'#title' => t('Name'),
);
이것은 단지 PHP 배열하고 최대 길이를 수정하려면, 당신은 쉽게 수행 할 수 있습니다. 그것이 <input name="text" maxlength="120" />
이라면? 특정 모듈이 그것을 변경하고 싶다면, 그것을하기 위해 일종의 정규식을 사용해야합니다.
또한 Drupal Form API에 의해 생성 된 양식에는 제출 기능뿐만 아니라 ** 추가 ** 검증 기능이 포함될 수 있습니다.
** 추가 : * 텍스트 길이가 120 자 이하 여야 유효성을 검사 할 필요가 없습니다. 누군가 HTML을 편집하고이 필드에 200자를 보낼 수 있지만 양식 API는이를 거부 할 수 있습니다 . 양식 API는 필수 입력란을 채우고, 최대 길이를 초과하지 않고, 요청이 CSRF 안전하고, 목록의 값이 실제로 허용 목록에있는 것과 같은 기본 유효성 검사를 수행 할 수 있습니다.
원시 HTML 양식을 사용하려면 양식 토큰, 캐시, 데이터 유효성 검사기 등을 추가해야합니다. 완료되면 이미 완료되었으며 "Form API"라는 이름이 부여됩니다.
- 1. 일반 양식의 차이점
- 2. 보고서와 양식의 차이점
- 3. 문의 양식과 업로드 파일 양식의 교차점
- 4. HTML 양식과 PHP 게시물, 정보
- 5. 사용자 정의 HTML 양식 드루팔 (Drupal) 양식의 POST 값
- 6. iPhone - topViewController와 다른 양식의 차이점
- 7. OpenERP 양식의 이름과 ID의 차이점
- 8. drupal 양식의 필드를 숨기는 방법
- 9. 양식의 차이점 : 선택 및 양식 : 옵션
- 10. HTML 양식의 HTML 페이지 오버레이
- 11. Html Validate와 Html ValidateFor의 차이점
- 12. 양식과 하위 양식의 데이터를 ms 액세스의 표로 복사하는 방법은 무엇입니까?
- 13. 모달 양식과 비 모달 양식의 프로젝트 수준 개념
- 14. HTML 양식의 많은 필드
- 15. HTML 양식의 공백 제거
- 16. HTML 양식의 onclick 파일
- 17. 다른 양식의 HTML 양식
- 18. CSS, 양식의 HTML 서식
- 19. html - 등록 양식의 정렬
- 20. $ _POST html 양식의 배열
- 21. html 양식의 FancyBox
- 22. HTML 양식의 PHP 메일
- 23. html 양식의 백엔드
- 24. 양식과 상호 작용합니다.
- 25. html 양식과 같은 PHP cURL 동작?
- 26. 루프가있는 HTML 양식과 배열에 데이터 가져 오기
- 27. jQuery 대화 상자가 HTML 양식과 작동하지 않습니다.
- 28. 는 PHP는 HTML 양식과 관련하여 도움이 필요하십니까
- 29. Drupal 7 프로그래밍 향상, Drupal 6 업그레이드와의 차이점
- 30. 양식의 사용자 정의 html 버튼 코드