PHPでプログラムする上でやっぱCookie(クッキー)について勉強することもあると思います。
でCookie(HTTP Cookie)とは、Webブラウザを通してパソコンに一時的にデータを保存させる仕組みですが、PHPを使ってデータを保存する方法を記載しておきます。
setcookieの引数についてメモ。引数は下記のようになる。
ちなみにsetcookieはHTTPヘッダー内で送信されるのでhtmlより前に記述する
//setcookie("クッキー名","保存する値","有効期限");
setcookie("myid","ほげほげ",time()+60);
- クッキー名:グローバル変数の$_COOKIEで受け取る際に必要になる
- 保存する値:保存したい値・・IDとかPWとか
- 有効期限:タイムスタンプ形式なのでtime()関数で現在のタイムスタンプを取得できる
*タイムスタンプは1970年1月1日からの経過秒数。秒で扱うので有効期限1分の場合は60秒となる。下記を参照
//有効期限1分
time()+60;
//有効期限10分(秒で表すと600秒)
time()+60*10;
//有効期限1日()
time()+60*60*24
time()+24*3600;(3600は60秒×60分で一時間3600秒となる。3600秒に一日24時間なので24をかける)
//有効期限1週間
time()+60*60*24*7;
time()+3600*24*7
クッキーの取得
上記で設定したクッキーを取得する場合は下記のようにグローバル変数の$_COOKIEを使用する。
$_COOKIEに指定する引数はsetcookieの第一引数に指定した値。
$myid=$_COOKIE["myid"];
クッキーの削除
クッキーの削除はsetcookieの引数に削除するクッキー名を指定するだけでクッキーを削除する動作する関数になる
setcookie("myid");
IDを保存するサンプル
とりあえずサンプルとしてIDとPWを入力して保存した後に再度入力画面に戻るとクッキーによってIDの入力フィールドに前回入力した値を表示する。
フォームで入力する「cookie-input.php」
クッキーを保存したか確認する画面「cookie-out.php」