ユーザーがサイトの X ページにアクセスしたときに特定のアクションを実行したい
カウンターを外部 (txt ファイルまたはデータベース) に保存する必要がありますか?
カウンターを 0 に設定し、ページの読み込みごとにインクリメントする方法が思いつきません。カウンターは常に 0 にリセットされますか、それとも明らかな何かが欠けていますか?
$_SESSION
データを使用して、個人が閲覧したページ数を保存するのは非常に簡単です。
$_SESSION['pageviews'] = ($_SESSION['pageviews']) ? $_SESSION['pageviews'] + 1 : 1;
最も簡単な方法は、PHP のセッション ストレージを使用することです。
session_start();
@$_SESSION['pagecount']++;
PHP は自動的にユーザーにセッション Cookie を送信し、$_SESSION の内容をこの Cookie に関連付けられたフラット ファイルに透過的に保存します。この問題に対して独自のソリューションを展開する必要はありません。
サイトを離れて別の日に戻ってきた場合でも、ユーザーが誰であるかを特定する方法 (ユーザー名とパスワードなど) は既にありますか? それとも、訪問者が閲覧したページ数を追跡し、閲覧した x 番目のページで何か特別なことをしたいだけですか?
2 番目の場合は、カウンターを格納できるセッション変数が既にあります。
$_SESSION['views'] = $_SESSION['views'] + 1
if($_SESSION['views'] == x) ...
ユーザーが最初にページにアクセスしたときにセッションを開始し、ユーザーがサブページを再読み込み/訪問するたびに値を増やすことができます。それを行う別の方法は、すべてのページに非表示フィールドを設定し、その値を取得してインクリメントし、新しいページに投稿することです。
<input type="hidden" value="2" id="blabla" />
if ステートメントを使用して、既に設定されているかどうかを確認します。
if( isset($count) )
{
$count = $count + 1;
}
else
{
$count = 1;
}
get メソッドを使用してカウントを URL に入れることもできるので、ファイルやデータベースにカウントを書き込む必要はありません。