$_GET 변수는 method="get" 으로 설정된 폼으로부터 값을 수집하는데 사용됩니다.




$_GET 변수


$_GET 변수는 HTTP GET 방식으로 전송된 name 과 값 변수들의 배열 입니다.


$_GET 변수는 method="get" 으로 설정된 폼으로부터 값을 수집하는데 사용됩니다. GET 방식으로 폼으로부터 전송된 정보는 모든 사람들이 볼 수 있으며 (웹브라우저의 주소 표시줄에 보여짐), 보낼 수 있는 정보의 양에도 제한이 있습니다. (최대 100  문자)


*참고: 폼을 전송하는 방법에는 크게 GET 과 POST 방식이 있습니다. GET은 정보를 URL에 실어서 보내는거고(따라서 주소를 보면 정보를 알 수 있음), POST는 정보를 숨겨서 보내기 때문에 눈으로 확인할 수 없습니다. 정확히는 HTTP 헤더에 숨겨져 (인코드되어) 서버로 전송 됩니다.


예제


<form action="welcome.php" method="get">
Name: <input type="text" name="name" />
Age: <input type="text" name="age" />
<input type="submit" />
</form>

사용자가 "Submit" 버튼을 누르면, welcome.php 로 이동될테고

URL은 아래와 같은 형태로 보일겁니다:


http://sirjhswin.tistory.com/welcome.php?name=Peter&age=37

"welcome.php" 파일은 이제 $_GET 변수를 이용해 폼으로부터 데이터들을 가져올 수 있게 됩니다. (폼 필드의 각 항목에 설정된 name 속성이 자동적으로 $_GET 배열에서 ID키가 된다는 사실을 명심해 주세요.):


welcome.php:

Welcome <?php echo $_GET["name"]; ?>.<br />
You are <?php echo $_GET["age"]; ?> years old!

표시 결과:
Welcome Peter.
You are 37 years old!



왜 $_GET 을 사용하는가?


참고: $_GET 변수를 사용할때 모든 변수 이름과 값들이 URL에 표시됩니다.  그래서 이 방법은 암호나 다른 민감한 정보를 보낼때 사용하셔서는 안됩니다. 하지만, 변수들이 URL에 표시되기 때문에, 페이지를 즐겨찾기나 북마크 하는 것이 가능합니다. 요렇게 하는게 몇몇 상황에서 상당히 유용합니다.


참고: HTTP GET 메소드(방식)은 큰 변수 값에는 어울리지 않습니다. 값은 결코 100 문자를 넘을 수 없습니다.




$_REQUEST 변수


PHP $_REQUEST 변수는 $_GET, $_POST, $_COOKIE  모두의 내용을 담고 있습니다.


PHP $_REQUEST 변수는 GET 이나 POST 메소드(방식)으로 전송된 폼 데이터로부터 결과를 얻는데 사용될 수 있습니다.



예제


Welcome <?php echo $_REQUEST["name"]; ?>.<br />
You are <?php echo $_REQUEST["age"]; ?> years old!
Sirjhswin


신고