폼 변수를 검증 클래스에 전달해야 하는지 여부를 결정하기 위해 폼이 제출되었는지 여부를 확인하는 가장 좋은 방법은 무엇입니까?
처음엔 그럴지도 모른다고
isset($_POST)
하지만 슈퍼글로벌은 어디에나 정의되어 있기 때문에 그것은 항상 사실로 돌아올 것이다.폼의 각 요소를 다음과 같이 반복하고 싶지 않습니다.
if(isset($_POST['element1'])
isset($_POST['element2'])
isset(...etc
이 질문을 쓰면서 저는 훨씬 더 기본적인 해결책을 생각해 냈습니다. 제가 확인할 수 있는 플래그 역할을 할 수 있는 숨겨진 필드를 추가하세요.
깃발을 꽂는 것보다 더 깨끗한 방법이 있을까요?
질문에 대한 답변
일반적인 확인을 위해서POST
액션 사용:
if ($_POST)
편집: 코멘트에 기재되어 있듯이, 이 방법은 경우에 따라서는 기능하지 않는 경우가 있습니다(예를 들면, 이름이 없는 체크 박스나 버튼).다음 항목을 사용해야 합니다.
if ($_SERVER['REQUEST_METHOD'] == 'POST')
어때.
if($_SERVER['REQUEST_METHOD'] == 'POST')
실제로 이 기능은 이미 [전송(Submit)]버튼이 실행하고 있습니다.
다음 폼에서 시도해 보십시오.
<form method="post"> <input type="submit" name="treasure" value="go!"> </form>
그런 다음 PHP 핸들러에서 다음을 수행합니다.
if (isset($_POST['treasure'])){ echo "treasure will be set if the form has been submitted (to TRUE, I believe)"; }
사용하다
if(isset($_POST['submit'])) // name of your submit button
if ($_SERVER['REQUEST_METHOD'] == 'POST')
.