フリーランスのためのネットビジネス専門学校 ネットで独立開業を目指す人を応援
フリーランスのためのネットビジネス専門学校 ネットで独立開業を目指す人を応援

ワードプレスを使って無料で作る 会員制ポイントサイトの作り方 第四回 クッキーを使ってポイントの二重操作を防ぐ方法

前回はブロック記事を読むとポイントが変化する仕組みを学びました。
しかし、前回の課題として同じページを再読込するとポイントが二重に操作されるという問題がありましたね。これを簡便ながらクッキーで解決します。

クッキーというのはサーバー側ではなくユーザー側のブラウザに保存される一時データです。
よくパスワードの保存に使用されていますよね。
PHPでクッキーを扱うのはとても簡単です。

▼とほほのCookie入門
www.tohoho-web.com/wwwcook.htm

クッキーを保存するには以下のようにします。

[note]setcookie( クッキー名 , 保存する値 , 有効期限 );[/note]

保存したクッキーを取り出すには以下のようにします。

[note]保存した値 = $_COOKIE[ クッキー名 ];[/note]

簡単に書きましたがPerlやJavascriptに比べて非常に簡単ですね。
クッキーで保存する値ですが、閲覧しているページのURLとします。URLはダブルことがないからです。

URLを取得するには2つの特殊な環境変数を使います。
環境変数「$_SERVER」はサーバーの環境が入った配列です。

「HTTP_HOST」を指定するとホスト名が取得でき、「REQUEST_URI」でホスト名以下が取得できます。

[note]$_SERVER[ “HTTP_HOST” ]
$_SERVER[ “REQUEST_URI” ][/note]

これを繋げるとホスト名とそれ以下が取得できます。

$url = $_SERVER[ "HTTP_HOST" ] . $_SERVER[ "REQUEST_URI" ];

単に判定するだけなので「http://」部分については不要です。
URLをクッキーに保存し、もし同じページを見ている場合はポイントの操作が既に行われているので何もしません。もしURLが異なればポイントを操作する、という処理です。

以下が改作したものです。前回記述した「functions.php」を以下に書き換えて下さい。

コメント

  1. 2018/09/18(火) 09:50:50
    轉噗 減加: 身邊不少人不太會運用CSP的透視尺規,於是弄了這個減加流Clip Studio Paint透視尺規基礎教學。裡面並沒有詳述透視原理,而是想用漫畫作畫這方面來示範如何使的尺規。關於透視原理還請大家自己學習喔 ... https://t.co/Qam13MzF3w
  2. 2018/09/18(火) 09:50:50
    @nyhopin 年邁的父母之說有些言過其實,看她那動作很有廣場舞大媽的感覺。在國內很多人為了搶座位、搶插隊都會拿年齡、拿疾病作手段。那年還網傳河南某地政府用愛滋患者去搞強拆,可見中國人做壞事什麼手段都使的出來。
  3. 2018/09/18(火) 09:50:50
    轉噗 減加: 身邊不少人不太會運用CSP的透視尺規,於是弄了這個減加流Clip Studio Paint透視尺規基礎教學。裡面並沒有詳述透視原理,而是想用漫畫作畫這方面來示範如何使的尺規。關於透視原理還請大家自己學習喔 ... https://t.co/6aAcMNsyC3
  4. 2018/09/18(火) 09:50:50
    リプルク 減加: 身邊不少人不太會運用CSP的透視尺規,於是弄了這個減加流Clip Studio Paint透視尺規基礎教學。裡面並沒有詳述透視原理,而是想用漫畫作畫這方面來示範如何使的尺規。關於透視原理還請大家自己學習... https://t.co/ddeheF1Yie
  5. 2018/09/18(火) 11:49:49
    轉噗 減加: 身邊不少人不太會運用CSP的透視尺規,於是弄了這個減加流Clip Studio Paint透視尺規基礎教學。裡面並沒有詳述透視原理,而是想用漫畫作畫這方面來示範如何使的尺規。關於透視原理還請大家自己學習喔 ... https://t.co/MMo14pKNv8

記事に戻る

コメントを残す