この例はHTMLフォームから入力されたデータをクッキーに保存しておき、次回そのページが表示された時に、前回入力時の値を自動的に初期表示させる例です。掲示板投稿における投稿者のニックネームやメールアドレスなど、毎回同じデータを入力する画面などを使うことによって、ユーザの入力作業を軽減させることができます。
<?php header("Content-type: text/html; charset=utf-8"); if (isset($_POST["btnExec"])) { //送信ボタンがクリックされたとき $name = $_POST["username"]; $address = $_POST["useraddress"]; //データをクッキーに保存 setcookie("mycookiedata", "ck_name=$name&ck_address=$address", time() + (3600 * 24 * 7)); print "送信されたデータは<BR>"; print "名前→" . $name . "<BR>"; print "住所→" . $address . "<BR>"; print "<BR><BR>"; } else { //はじめて呼び出されたとき if(strlen($_COOKIE["mycookiedata"]) > 0) { //クッキーにデータが保存されているとき $data = $_COOKIE["mycookiedata"]; parse_str($data); //分解後のデータをフォームで使う変数に代入 $name = $ck_name; $address = $ck_address; } } ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=x-euc-jp"> <META http-equiv="Content-Style-Type" content="text/css"> </HEAD> <BODY> 名前と住所を入力して[送信]ボタンをクリックしてください。 <FORM action="<?=$_SERVER["PHP_SELF"]?>" method="POST"> 名前:<INPUT size="40" type="text" name="username" value="<?=$name?>"><BR> 住所:<INPUT size="40" type="text" name="useraddress" value="<?=$address?>"> <INPUT type="submit" name="btnExec" value="送信"> </FORM> </BODY> </HTML>