広告ごとの集計を、
④の時点までcodeナンバーを引っ張って、
どの媒体から流れてきたユーザーが、登録したのか集計を取らないといけなくなりました。
どのようにして、codeナンバーを引っ張って、
集計をとればいいのか、さっぱりわからないです。
文章での説明が下手なので、イメージにまとめました。
どなたか、わかる方いらっしゃいますか?
-----------------------------
http://******.com/code1(広告A)
http://******.com/code2(広告B)
http://******.com/code3(広告C)
http://******.com/code4(広告D)
http://******.com/code5(広告E)
(******は、同一ドメインで、上記のいずれかのURLからユーザーが流れてきます)
┃
↓
[サイトTOPページ]
index.php----------------- ①
[非会員ページ]┛--② ┗[会員ページ]
nomember.php
┃
↓
[規約]member.php-------③
┃
↓
[承認]member_ok.php----④
code1(広告A) --- 10件
code2(広告B)--- 3件
code3(広告C)--- 4件
方法はいくつかあって、並べると「クッキーに書く」「GET,POSTメソッドを使ってデータを送る」のどちらかでしょうか。
それぞれ特徴があり、以下のようになります。
GETメソッド
リンクのURL情報に他のデータを載せるので一番改ざんしやすいが、手軽な方法。
POSTメソッド
これも改ざんすることは出来るが、GETメソッドよりは、し難い。
クッキー
GET,POSTメソッドよりさらに改ざんし難いが、ユーザが無効にしていることもある。
POST,GETメソッドを使うときのデータの流れは
index.php→nomember.php→member.php→member_ok.phpという感じに順を追って流れます。それに対しクッキーは
index.php→クッキー(ユーザのブラウザ)→member_ok.php
どちらもデータ改ざんのリスクはありますが、システムにあまり不可をかけない方法としてはこのいずれかです。
index.phpにアクセスがあったとき、どこから来たのかをリファラを参照する。あるいは広告にGETを埋め込んでもらうなどします。
そのデータを使って判定し、広告code1~5のいずれかならクッキー。あるいはGETメソッドのリンクURL、POSTメソッドのhiddenタグに書き込みます。
$codeには0~5が入ってます(0は何処の広告でも無い)
GETメソッド例
print '<a href="nomember.php?code=$code">リンク</a>';
POSTメソッド例
print '<form method="POST" action="nomember.php">';
print '<input type="hidden" name="code" value="$code" >'
print '<input type="submit" value="アクセス">';
print '</form>';
クッキー例
setcookie ( "code", $code, time( )+7*24*3600 ); //1週間で期限切れ
受け取りはそれぞれ、GETが$_GET["code"]。POSTが$_POST["code"]。クッキーが$_COOKIE["code"]になるはずです。
GET,POSTメソッドを使う場合は、規約ページと承認ページでも同じように情報を渡す必要があります。
最終的にmember_ok.phpで情報を受け取り、codeの内容を参照し、それぞれ条件に合うものをカウントすれば意図する動作になるかと思います。
わかりやすい、回答ありがとうございます。
いただいた回答で、テストしてみます。
書き忘れましたが、この質問は携帯のHPを前提で書いてます。