クッキーによるユーザ情報の保存と表示
入力した情報をクッキーに保存し再入力を省かせる方法
PHP
// $_POST['account']の処理後、$accountにセット
if (empty($_POST['remember'])) {
// 保存しない
// クッキーを消去
unset($_COOKIE['logged']);
// 有効期限を過去に設定
setcookie('logged', '', time() - 3600, '/');
} else {
// 保存する
// 有効期限は30日後
setcookie('logged', $account, time()+60*60*24*30, '/');
// HTTPSのみ保存、取得
// setcookie('logged', $account, time()+60*60*24*30, '/', '', 1, 1);
}
if (empty($_COOKIE['logged'])) {
$view->assign('account', '');
} else {
$view->assign('account', $_COOKIE['logged']);
}
Smarty
<input type="text" name="account" value="{$account|escape}">
<input type="checkbox" id="remember" name="remember" value="1"{if isset($account)}checked{/if}>
<label for="remember">保存する</label>