Post

(PHP) form tag, GET POST / cookie, session

==CLIENT==

1
2
3
4
5
6
7
8
<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 )

1
2
3
4
<?PHP
$\_GET[user]
?>

$\_GET[user]은 get method로 넘어온 query string에서 user라는 key에 대응되는 value를 의미한다. 즉 여기서는 default\_value가 된다.

  • GET이든 POST든 관계없이 취급하려면 $\_REQUEST를 사용한다.
  • 어떤 key=value쌍이 존재하는지는 isset()으로 확인한다.
배열로 받기

checkbox와 listbox는 <input ... name="key[]">로 지정하고 배열로 받는다. $\_POST["key"][idx]

1
2
3
4
5
6
7
8
if (isset($\_REQUEST["check"])){
foreach ($\_REQUEST["check"] as $check){

print $check.", ";

}
}

쿠키는 client에서도, server에서도 모두 설정 가능하다. client에서는 JS를 이용하게 되고, server에서는 php, jsp 등을 이용하게 된다.

http://php.net/manual/en/features.cookies.php

Session

2017/06/27 - [Web/Secu] - Session & HTTP Session hijacking

1
2
3
4
5
6
7
8
9
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();    // 세션 끊기(삭제)

This post is licensed under CC BY 4.0 by the author.