일단 간략하게 두 method에 대해 다시 알아보면,
POST
서버의 상태를 변경시킬 의도가 있는 데이터를 전송 할 때 사용한다.
전달된 데이터는 응답을 통해 반환 받을 수 있고, get방식 요청과 달리 웹 폼을 통해서만 데이터를 전송할 수 있다.
시각적인 차이는, get방식과 달리 url에 나타나지 않는다.
GET
서버의 상태를 변경하려는 의도없이, 단순히 서버에 전달하고자 할 때 사용한다.
데이터의 양이 적을경우, url을 통해 데이터를 전달 할 수 있기때문에 유용할 때가 많다. 하지만, url에 드러나는 데이터 덕분에
보안상 post에 비해 취약하다.(injection 공격 가능성을 제공하는 격)
..
.
자기참조 스크립트의 경우, 두가지 방식 모두에 응답 할 수 있다.
스크립트가 두 방식을 구분하는 방법은, 최초 구동 방식을 통해 구분한다.
처음 다른 스크립트에서 url로 전달받았다면, get방식으로 스크립트를 사용한다. 그 후 폼의 post방식으로 데이터를
전달했다면 get방식은 잊고 post방식으로 응답한다.
즉, 전달받은 방식이 get이면 get방식에 맞게, post방식이면 post방식에 맞게 사용하여 준다.
약간 우유부단하지만, 융통성있는 스크립트랄까..?
책에서 쓰인 예는,
@ 다른 스크립트에서 url을 통해 데이터를 전송한다. (<a href="***.php?id='name'&pw='password'">...)
@ 전달받은 데이터를 전역변수 $_GET을 통해 적절히 이용한다.
@ form의 method를 post로 하고, 자신을 참조하도록 한다.
(<form method='post' action='<?php echo '$_SERVER['PHP_SELF']'; ?>'>...)
@ 전달받은 상황을 구분하여 전역변수 $_POST를 통해 이리저리 이용한다.
(get방식으로 받은 데이터는 못했지만, 쿼리를 통해 이리저리 맘껏!)
'Coding Note' 카테고리의 다른 글
[winAPI] 얌얌.exe - 더블버퍼 & 틩기기 (0) | 2011.02.16 |
---|---|
[winAPI] 더블버퍼링 - 깜빡임 없애기 (5) | 2011.02.16 |
[PHP] mysqli_fetch_array() (0) | 2011.01.31 |
[PHP] php에서 database에 데이터 저장 (2) | 2011.01.31 |
[MySQL] 기본적인 쿼리 (0) | 2011.01.31 |