/**
*
* @authors Benjamin
* @date 2013-11-13 10:16:59
*/
1. 일반적인 중복 제출 문제
a>제출 버튼을 두 번 클릭하세요.
b>새로고침 버튼을 클릭하세요.
c>브라우저 뒤로 버튼을 사용하여 이전 작업을 반복하면 양식이 반복적으로 제출됩니다.
d> 브라우저 기록을 사용하여 양식 제출을 반복합니다.
e> 브라우저의 HTTP 요청이 중복됩니다.
2. 양식 반복 제출 방지 방법
a> 양식이 제출된 후 현재 버튼을 비활성화하거나 버튼의 클릭 이벤트 또는 기본 이벤트를 취소합니다. 이 접근 방식은 참을성 없는 사용자가 버튼을 여러 번 클릭하는 것을 방지합니다. 그러나 문제가 있습니다. 클라이언트에서 Javascript가 비활성화된 경우 이 방법은 현대 웹 사이트에서는 효과적이지 않습니다.
b>게시/리디렉션/가져오기 모드. 제출 후 페이지 리디렉션을 수행하는 것은 소위 PRG(Post-Redirect-Get) 패턴입니다. 즉, 사용자가 양식을 제출하면 클라이언트 측 리디렉션을 수행하고 제출 성공 정보 페이지로 이동합니다. 이렇게 하면 사용자가 F5 키를 눌러 발생하는 반복 제출을 방지할 수 있으며 브라우저 양식의 반복 제출에 대한 경고도 표시되지 않으며 브라우저의 앞으로 및 뒤로 버튼을 눌러 발생하는 동일한 문제도 제거할 수 있습니다.
c> 쿠키를 사용하여 반복적인 양식 제출 처리
PHP 구현: