form action 예제

다음 샘플 HTML 조각은 사용자가 이름, 성, 전자 메일 주소 및 성별을 입력할 수 있는 간단한 양식을 정의합니다. 제출 단추가 활성화되면 양식이 작업 특성에 의해 지정된 프로그램으로 전송됩니다. 데이터 손실에서 권한 에스컬레이션을 사용하여 전체 웹 사이트 인프라를 제어하는 공격에 이르기까지 끔찍한 결과가 초래할 수 있습니다. 이것은 매우 심각한 위협이며 일부 위생 을 수행하지 않고 사용자가 보낸 데이터를 저장해서는 안됩니다 (예 : mysqli_real_escape_string(사용). 이 예제에서는 INPUT 요소를 사용할 수 없습니다. 따라서 사용자 입력을 받을 수 없으며 해당 값이 양식과 함께 제출됩니다. 따라서 예를 들어 “mycontrol”이라는 컨트롤의 경우 해당 부분이 지정됩니다: CSRF 공격은 클라이언트 쪽 스크립트를 웹 페이지에 삽입하여 동일한 방식으로 시작한다는 점에서 XSS 공격과 유사하지만 대상은 다릅니다. CSRF 공격자는 권한이 높은 사용자(예: 사이트 관리자)의 권한으로 권한을 에스컬레이션하여 수행할 수 없는 작업(예: 신뢰할 수 없는 사용자에게 데이터 보내기)을 수행하려고 합니다. 이 예제에서는 Python을 사용하여 동일한 작업을 수행하는 방법을 보여 주며 제출된 데이터를 웹 페이지에 표시합니다. 이렇게 하면 Flask 프레임워크를 사용하여 템플릿을 렌더링하고 양식 데이터 제출 등을 처리합니다(python-example.py 참조).

이 예제에서는 전송한 데이터가 있는 페이지를 표시합니다. 이 작업은 이전과 동일한 예제 양식이 포함된 php-example.html 파일의 경우 게시물 방법과 php-example.php의 작업으로 볼 수 있습니다. 제출되면 양식 데이터를 php-example.php로 전송하며, 여기에는 위의 블록에 있는 PHP 코드가 포함됩니다. 이 코드가 실행되면 브라우저의 출력은 Hi Mom입니다. HTML 양식에 두 개의 단추를 추가해야하는 웹 사이트가 있습니다. 두 단추는 별도로 작동하고 다른 페이지로 데이터를 보내야 합니다. 이에 대한 formaction 특성을 사용하고 싶습니다. HTML에서 양식 구성 특성을 사용해 보려면 어떻게 해야 합니까? 이 예제에서는 A 요소에 의해 정의된 링크에 액세스 키를 할당합니다.

이 액세스 키를 입력하면 사용자가 다른 문서(이 경우 목차를)로 이동합니다. formaction.html 파일을 열면 이 그림과 같이 출력이 웹 페이지에 표시됩니다. 다음 예제에서는 “onclick” 이벤트가 발생할 때 JavaScript 함수 이름 확인이 트리거됩니다. 두 단추 모두 데이터를 서로 다른 페이지로 보냅니다. 양식 작업 특성은 양식 작업 특성을 재정의합니다. 사용자 입력이 바람직하지 않거나 관련이 없는 컨텍스트에서는 컨트롤을 사용하지 않도록 설정하거나 읽기 전용으로 렌더링할 수 있어야 합니다. 예를 들어 사용자가 필요한 데이터를 입력할 때까지 양식의 제출 단추를 사용하지 않도록 설정할 수 있습니다. 마찬가지로 작성자는 양식과 함께 값으로 제출해야 하는 읽기 전용 텍스트를 포함할 수 있습니다. 다음 섹션에서는 비활성화된 컨트롤과 읽기 전용 컨트롤에 대해 설명합니다.