[PHP] form tag, GET POST / cookie, session
==CLIENT==
```html
<form method=get action=index.php>
<table border=0 align=center cellpadding=10 cellspacing=0>
<tr>
<td><input type=text name="user" value="default_value"></td>
<td><input type=submit></td>
</tr>
</form>
```
==SERVER== ( ?user=default_value )
```php
<?PHP
$_GET[user]
?>
```
`` $_GET[user]``은 get method로 넘어온 query string에서 `` user``라는 key에 대응되는 `` value``를 의미한다.
즉 여기서는 `` default_value``가 된다.
- GET이든 POST든 관계없이 취급하려면 `` $_REQUEST``를 사용한다.
- 어떤 `` key=value``쌍이 존재하는지는 ``php isset()``으로 확인한다.
배열로 받기
checkbox와 listbox는 ``html <input ... name="key[]">``로 지정하고 배열로 받는다. ``php $_POST["key"][idx]``
```php
if (isset($_REQUEST["check"])){
foreach ($_REQUEST["check"] as $check){
print $check.", ";
}
}
```
Cookie
쿠키는 client에서도, server에서도 모두 설정 가능하다.
client에서는 JS를 이용하게 되고, server에서는 php, jsp 등을 이용하게 된다.
Session
```php
session_set_save_handler(); // 세션 처리를 위한 wrapper 등을 작성할 수 있기 때문에
//이를 이용하면 세션 데이터를 /tmp가 아니라 DB에 저장하도록 처리할 수 있다.
session_start();
$_SESSION["key"] = "value";
session_unregister("key"); // 특정 세션 변수(key=value 쌍) 삭제
session_cache_expire(60); // 분 단위. default=180
session_unset(); // 세션 변수 모두 삭제
session_destroy(); // 세션 끊기(삭제)
```
'Languages & Frameworks > PHP' 카테고리의 다른 글
[PHP] mysqli, PDO / password_* (0) | 2017.06.24 |
---|---|
[PHP] 함수, 클래스, 객체, 상속, 트레이트 (0) | 2017.06.10 |
[PHP] HTTP response header 수정 ( redirect, Download Dialog ) (0) | 2017.06.08 |
[PHP] Program execution, Shell escape (0) | 2017.06.07 |
[PHP] 상수 목록 / Super globals (0) | 2017.06.07 |