장바구니에있는 내용 (분명히 진행중인 작업)을 볼 수있는 페이지가 있고 장바구니를 지울 수있는 단추가 있으며 작동하지만 사이트의 다른 페이지로 이동합니다 링크를 클릭하거나 검색 주소창에 입력하여 양식 작업을 실행합니다. 또한 장바구니에 추가 할 제품 페이지에서도 수행합니다. 버튼을 눌렀을 때만 작업이 실행되도록이 작업을 중단하려면 어떻게합니까?양식 실행 중 제출하지 않고 실행
답변
잠시 후 나는 당신이하고 싶은 것을 undestand. 세션이 파괴됩니다 페이지 속성 당신은 액션 attribiute에서 세션을 파괴 할 수 있지만 행동에 넣을 수 있습니다
destroy.php
<?php
session_start();
session_destroy();
echo 'destroyed';
?>
메인 파일
<div>
<?php
echo "You have " . $_SESSION['cartItems'].($_SESSION['cartItems'] > 1 ? 'items' : 'item');
echo " in your cart amounting to $" . $_SESSION['cartPrice'];?>
<form action="destroy.php"><input type="submit" value="Clear Cart"></form>
</div>
당신이 할 수있는 또한 action = ""에 넣고 숨겨진 param을 사용하여 파괴해야하는지 확인하십시오 :
하나의 파일 솔루션 :
<div>
<?php
session_start();
if(isset($_POST['destroy']) && $_POST['destroy'] == 1) session_destroy(); //destroying session
echo "You have " . $_SESSION['cartItems'].($_SESSION['cartItems'] > 1 ? 'items' : 'item');
echo " in your cart amounting to $" . $_SESSION['cartPrice'];?>
<form method="POST" action="">
<input type="submit" value="Clear Cart"><input type="hidden" value="1" name="destroy">
</form>
</div>
그걸로 문제가 해결되었지만 지금 카트를 지우려고 할 때 destory.php 파일을 열어 빈 페이지가 나옵니다 – cameronjonesweb
1 개의 파일 솔루션으로 답변을 편집했습니다. 2 파일 솔루션에서 당신은 항상'header ("Location : page.php"); – Robert
이 :
<form action="<?php session_destroy();?>">
은 아마 당신이 일을 생각하는 일을하지 않습니다.
session_destroy()
은 양식에서 수행하는 작업이 아닙니다. 양식이 무엇이든 페이지가로드 될 때마다 페이지가로드 될 때 수행됩니다. 실제로 이해가되지 않는 방식으로 서버 측 및 클라이언트 측 코드를 혼합합니다.
페이지가 렌더링되는 동안 서버 측 코드가 서버에서 해석됩니다. 그것의 모든. 해당 코드의 결과가 페이지에 렌더링됩니다. 페이지가로드 될 때마다 session_destroy()
을 실행 한 다음 양식 작업으로 session_destroy()
의 출력을 사용하고 있습니다.
출력은 이렇게 양식 태그는 아마 다음과 같이 찾고 끝, 부울입니다 :
<form action="true">
정말 의미있는 아무것도하지 않는다.
양식 제출시 세션을 삭제하려면 제출 작업이 세션을 파괴하는 페이지 여야합니다. 이런 식으로 페이지 자체에 session_destroy()
을 호출하면 페이지가로드 될 때마다 이 항상으로 전화합니다 (session_destroy()
). 탐색 할 때가 아니라 페이지가로드 될 때.
- 1. 제출하지 않고 양식 제출
- 2. 제출하지 않고 라디오 버튼 양식
- 3. 페이지를 제출하지 않고 양식 제출
- 4. 실행 파일 실행 중
- 5. 저장소에 다시 제출하지 않고 앱의 실행 이미지를 변경합니다. 가능한?
- 6. 제출하지 않고 일부 기능을 실행 한 다음 제출하십시오
- 7. Eclipse에서 "실행 중"스크립트 실행
- 8. 실행 중 PHP 명령 실행
- 9. 실행 중 Windows 양식 디자인이 업데이트되지 않았습니까?
- 10. ID가 변경되지 않고 서버에서 실행 중
- 11. 제출하지 않고 입력 양식 값을 얻으려면 어떻게해야합니까?
- 12. 내부 양식을 제출하지 않고 기본 양식 제출
- 13. 제출하지 않고 양식 단추 인쇄 오류가 발생했습니다.
- 14. 기기에서 실행 중
- 15. 실행 중 JAR 업데이트
- 16. 양식 실행시 코드 실행
- 17. 실행 중 항목 변경
- 18. 코드 실행 중 InvalidAttributeValException
- 19. 제출하지 않고 button_to
- 20. GetResponse Task.Factory.StartNew에서 실행 중
- 21. 실행 중 파이프 데이터
- 22. 오라클 양식 10g, 양식 실행
- 23. 양식을 제출하지 않고 로그인
- 24. ODP.NET 실행 중 ReportViewer가 실행 중임
- 25. Vim이 실행 및 보통 명령 실행 중
- 26. HTTP 실행 중 각도 2 실행 인터페이스
- 27. 재귀 함수 실행 중 UITextView가 실행 중입니다.
- 28. 발사 중 실행 중 감지
- 29. 다른 스레드에서 양식 실행
- 30. 양식 제출시 JavaScript 실행
Seriosly이 코드를 이해하지 못합니다. 세션이 실제로 작동하는지 (이유는 무엇입니까?) 때문에 다른 페이지에서 세션 데이터를 볼 수 없습니다. – Robert
@Robert 세션에서 항목을 장바구니에 저장합니다. 장바구니를 지울 수있는 버튼이 있습니다 – cameronjonesweb