LoginSignup
0
1

More than 3 years have passed since last update.

cookieを使って、見せるページを分岐させる。

Last updated at Posted at 2021-04-10

自分のための忘備録です。


そのページに初回の人と2回目以降の人を分けて見せたいとかの時にクッキーでできるみたいです。
クッキーは簡単に設置できるみたいです。

有効期限が一時間のクッキー設置

session_start()はいらないかもです。。

htmlにphpで記入
<?php session_start(); ?>
<?php
  $value = 1;
  if(!isset($_COOKIE['visited'])) {
    setcookie("visited", $value, time()+3600);
?>

//ここに初回の人に見せる内容

<?php
exit;
}
?>

//ここに2回目以降の人に見せる内容

問題点

ブラウザでクッキー無効にしていたら効かないみたいです。
クッキーの代わりにセッションというのがあるみたいです。

クッキーとセッションの違い

クッキー・・・ブラウザに情報を残す
セッション・・・サーバーに情報を残す

セッションの有効期限を変更するには

php.iniの「session.cookie_lifetime」を変更する必要があるみたいですが、
レンタルサーバー等では変更できるかどうかは確認しないとわからないです。
他にもphpの関数で設定できるみたいですが、これもレンタルサーバーでは効かないこともあるみたいです。

セッションで有効期限1時間で設置
<?php
// セッションの有効期限を設定
session_set_cookie_params(3600);

// セッション管理開始
session_start();

if (!isset($_SESSION['visited'])) {
    $_SESSION['visited'] = 1;
?>
    //ここに初回の人に見せる内容
<?php
exit;
}
?>

//ここに2回目以降の人に見せる内容

セッションの削除

テストとかするとき必要でした。

php
unset($_SESSION['visited']);

参考しました。
https://www.sejuku.net/blog/25276

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1