カテゴリ: PHP 更新日: 2026/02/10

PHPのCookieをGDPRとプライバシーポリシーに対応させる方法!初心者向けにやさしく解説

PHP の Cookie の GDPR・プライバシーポリシー対応方法
PHP の Cookie の GDPR・プライバシーポリシー対応方法

先生と生徒の会話形式で理解しよう

生徒

「先生、PHPでCookieを使うときって、ヨーロッパの法律にも関係あるんですか?」

先生

「はい、ヨーロッパではGDPRという個人情報保護の法律があるので、PHPでCookieを使う場合にも注意が必要なんです。」

生徒

「えっ、法律?プログラミング初心者でも関係あるんですか?」

先生

「もちろん関係あります。でも安心してください。今日はPHPでCookieを使うときにGDPRやプライバシーポリシーにどう対応すればいいか、やさしく解説しますね。」

1. GDPRとは?初心者にもわかる意味と目的

1. GDPRとは?初心者にもわかる意味と目的
1. GDPRとは?初心者にもわかる意味と目的

GDPR(General Data Protection Regulation)は、ヨーロッパのEUで定められた個人情報保護の法律です。日本語では「一般データ保護規則」と呼ばれます。

このGDPRは、EUに住んでいる人のデータを扱うすべてのWebサイトやサービスに対して適用されます。たとえ日本から運営していても、アクセスする人がEU圏内であれば関係します。

つまり、PHPで作ったWebサイトでも、Cookieを使って個人情報を保存するならGDPRに対応しないといけません。

2. Cookieとプライバシーの関係とは?

2. Cookieとプライバシーの関係とは?
2. Cookieとプライバシーの関係とは?

Cookie(クッキー)とは、Webサイトがユーザーのブラウザに情報を保存する仕組みのことです。ログイン情報やアクセス状況、選んだ商品などが保存されます。

この中には「個人情報」に関わるものもあります。たとえば、次のような内容です:

  • 名前やメールアドレス
  • ユーザーIDやセッションID
  • 位置情報やIPアドレス

こうした情報をCookieに保存すると、ユーザーのプライバシーに関わるため、事前に説明して同意を得る必要があります。

3. PHPでCookieを使う前に表示する「同意バナー」とは?

3. PHPでCookieを使う前に表示する「同意バナー」とは?
3. PHPでCookieを使う前に表示する「同意バナー」とは?

GDPRでは、個人情報を保存する前に「Cookieを使ってもいいですか?」という確認の表示(バナー)をユーザーに見せなければなりません。

これを「Cookie同意バナー」と呼びます。

バナーが表示されたら、ユーザーが「同意する」ボタンをクリックした場合にだけ、PHPでCookieを保存します。

4. Cookie同意バナーのHTMLとJavaScript例

4. Cookie同意バナーのHTMLとJavaScript例
4. Cookie同意バナーのHTMLとJavaScript例

まずは、シンプルなCookieバナーのHTMLを作成しましょう。以下は表示部分の例です。


<div id="cookie-banner" class="fixed-bottom bg-light p-3 border-top">
  このサイトではCookieを使用しています。<a href="/privacy.html">プライバシーポリシー</a>
  <button class="btn btn-primary ms-2" onclick="acceptCookie()">同意する</button>
</div>
<script>
function acceptCookie() {
  document.cookie = "cookie_consent=1; path=/";
  document.getElementById("cookie-banner").style.display = "none";
}
window.onload = function() {
  if (document.cookie.indexOf("cookie_consent=1") !== -1) {
    document.getElementById("cookie-banner").style.display = "none";
  }
}
</script>

このコードでは、ユーザーが「同意する」をクリックしたときにcookie_consentというCookieが保存される仕組みです。

5. PHPでCookieを保存する前に同意をチェック

5. PHPでCookieを保存する前に同意をチェック
5. PHPでCookieを保存する前に同意をチェック

次に、PHPでCookieを使う前に、同意を得たか確認するコードを見てみましょう。


if (isset($_COOKIE['cookie_consent']) && $_COOKIE['cookie_consent'] === '1') {
    setcookie("user_id", "123", time() + 3600);
}

このコードは、ユーザーが同意したあとでないとCookieを保存しないようになっています。

6. プライバシーポリシーには何を書くべき?

6. プライバシーポリシーには何を書くべき?
6. プライバシーポリシーには何を書くべき?

GDPR対応では、Cookieの使い方を詳しく書いた「プライバシーポリシー(個人情報保護方針)」ページも必要です。

最低限、以下の内容を記載しましょう:

  • どんな種類のCookieを使っているか
  • Cookieでどんなデータを保存しているか
  • 保存期間はどれくらいか
  • 第三者と共有するかどうか
  • ユーザーがCookieを拒否・削除する方法

これらは、HTMLでprivacy.htmlというページを用意し、バナーからリンクを貼るのが一般的です。

7. 初心者でもわかるPHPのGDPR対応チェックリスト

7. 初心者でもわかるPHPのGDPR対応チェックリスト
7. 初心者でもわかるPHPのGDPR対応チェックリスト

最後に、PHPでCookieを使うときのGDPR対応ポイントをチェックリスト形式でまとめます。

  • Cookieを使う前に同意バナーを表示しているか
  • 同意なしではCookieを保存していないか
  • Cookieの使い方を明記したプライバシーポリシーがあるか
  • セキュア属性やhttponlyを設定してセキュリティを強化しているか
  • EUからアクセスされる可能性があるなら必ず対応しておく

これらを守ることで、法律にもユーザーにも安心して使ってもらえるWebサイトになります。

コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

関連記事:
カテゴリの一覧へ
新着記事
New1
Python
Pythonのカスタム例外を作成する方法を完全解説!初心者でもわかる独自のExceptionクラス入門
New2
PHP
PHP の型変換を完全ガイド!初心者でもわかる明示的変換・自動変換
New3
PHP
PHPの真偽値と条件判定をやさしく解説!初心者でもわかるempty・isset・is_nullの使い方
New4
PHP
PHP の file_get_contents() を使ってファイルを読み込む方法!初心者でもできる簡単なファイル操作
人気記事
No.1
Java&Spring記事人気No1
Python
Pythonのfinally文を徹底解説!例外発生時でも実行される処理の書き方と使い方
No.2
Java&Spring記事人気No2
Python
Pythonで辞書のネスト構造(入れ子辞書)を扱う方法 初心者向け完全ガイド
No.3
Java&Spring記事人気No3
Python
Pythonのクラスメソッドと静的メソッドの違いとは?初心者でも迷わない使い分けガイド
No.4
Java&Spring記事人気No4
Python
Pythonの書き方を基本から解説!はじめてのPythonプログラム
No.5
Java&Spring記事人気No5
Python
Pythonで文字列が数値か判定する方法!isdigit()・isnumeric()の違い
No.6
Java&Spring記事人気No6
Python
Pythonのコンストラクタ(__init__)の使い方!初心者でもわかるオブジェクトの初期化
No.7
Java&Spring記事人気No7
PHP
PHPの可変長引数(...$args)の使い方を完全ガイド!初心者でもわかる基本と活用方法
No.8
Java&Spring記事人気No8
PHP
初心者向けPHP の MySQL のデータを更新する方法(UPDATE 文)完全ガイド