2017-01-30 1 views
0

MySql에서 PHP까지의 레코드를 삭제 (또는 업데이트)하고 싶습니다. 여기에있는 옵션은 다음과 같습니다.Href V/s 양식 제출

하나.

<a href="process.php?pid=3&cid=10" role="button" class="btn btn-danger">Delete</a> 

두.

<form action="process.php" method="post"><input type="hidden" name="pid" value="3"><input type="hidden" name="cid" value="10"><button type="submit" class="btn btn-danger">Delete</button></form> 

나중에, 나는 process.php에서 리디렉션합니다. 그래서, 어느 쪽이 더 좋고 왜 그런지 알 수 있습니까?

두 옵션 모두 작동합니다 (삭제 또는 기타). 난 그냥 제출 양식의 모든 장점을 물어보고 싶은

+0

는 http://stackoverflow.com/questions/7436205/get-or-post-for-deletion를 참조 [GET 또는 삭제 POST (HTTP의 – Sean

+3

가능한 중복 : // 유래. co.kr/questions/7436205/get-for-post-for-deletion) –

+0

@Anant는 모두 나를 위해 작동합니다. 나는 단지 하나 이상의 다른 것보다 유리한 것을 알고 싶다. –

답변

0

하나 : - get 메소드를 사용하여

<a href="process.php?pid=3&cid=10" role="button" class="btn btn-danger">Delete</a> 

2 : - 가져 오기 비교 Post 메소드

<form action="process.php" method="post"><input type="hidden" name="pid" value="3"><input type="hidden" name="cid" value="10"><button type="submit" class="btn btn-danger">Delete</button></form> 

사용 및 게시 방법 :

가져 오기 방법 (장점과 단점)을 GET 방식으로 전송 된 데이터가 URL에 표시되기 때문에

  1. , 그것은 즐겨 찾기에 특정 쿼리 문자열 값으로 페이지 수 있습니다. 다음은 URL 쿼리 문자열에서 완전히 볼뿐만 아니라 잠재적으로 방문 페이지로 클라이언트 브라우저의 메모리에 저장되기 때문에

  2. GET 메서드

    은 같은 사용자 이름과 암호 같은 중요한 정보 전달에 적합하지 않습니다.

  3. GET 메서드는 데이터를 서버 환경 변수에 할당하므로 URL의 길이가 제한됩니다. 따라서 전체 데이터를 전송하려면 제한이 있습니다.

Post 메소드 (장점과 단점)

  1. 는 사용자가 입력 한 정보가 URL 쿼리 문자열이나 서버 로그에 표시 적이 없기 때문에 얻는 것보다 더 안전합니다.
  2. 이 될 수있는 데이터의 양에는 훨씬 큰 한계가 있으며 POST를 사용하여 이진 데이터 (파일 업로드)뿐만 아니라 텍스트 데이터를 보낼 수 있습니다.
  3. POST 메서드로 전송 된 데이터가 URL에 표시되지 않으므로 특정 쿼리로 페이지를 북마크에 추가 할 수 없습니다.

thanks

+0

'form-submit'에서 한가지 주목할 점은'javascript'에 의해 submit되기 전에'form'을 검증 할 수 있다는 것입니다. –

+0

예, 숨겨진 양식 값은 아닙니다. –