ポイントは次の通り。ソースを参考にして欲しい。
- ブラウザ側(HTTP クライアント)への書き込みには setcookie 関数を使う。
- setcookie 関数は、Content-type: text/html\n\n を出力する前に呼び出さなければならない。その後に呼び出すとエラーとなる。
- cookie の値の読み出しには $_COOKIE['クッキーID'] から値を取得する。
<?php
<pre>$COOKIE_ID='count'; // 変数名のようなものをここに書く
$DOMAIN='twinkle.cc'; // このスクリプトを置いたサーバのドメイン
$RELATIVE_PATH='/'; // ルート以下、サブディレクトもすべて対象にする場合は「/」
$COOKIE_EXPIRE = time() + 10 * 365 * 24 * 60 * 60;
//有効期限 10年(10年 x 365日 x 24時間 x 60分 x 60秒)
// クッキー発行($DOMAIN の前にはドット「.」を付ける。)
setcookie($COOKIE_ID, $_POST['email'], $COOKIE_EXPIRE, $RELATIVE_PATH, ".$DOMAIN");
// あとは、$_COOKIE[クッキーID] でアクセスできる。$_COOKIE[…] は定義済み変数。
?>
">
- 前回入力したメールアドレス: <?php print $_COOKIE[$COOKIE_ID]; ?>
- 新たにメールアドレスを入力:
Update: 2006/09/30
Original: 2006/08/20
Comments
PHP で、cookie を扱うときのカラクリ(シーケンス)