2010-11-17 36 views
1

我在我的網站上有一個網頁 - 或者它確實是一個Web應用程序,而這個頁面就是儀表板(必須登錄)。使用PHP設置簡單的A/B測試

我想嘗試兩個設計的面板出現在頁面的右側。

我有2個面板設計,我可以輕鬆跟蹤每個點擊的時間,但我如何提供這些替代的verisons?

  • 我應該只是以某種方式加載它們或者當頁面加載(這將意味着一個人看到他們倆)

  • 我要舉報該用戶爲A或B,他們只看到過那個版本?

,我如何均勻,使遊客1得到一個提供它,訪客2獲得乙等

回答

2

我會採取一個用戶的IP地址的哈希值,然後模2得到一個0或1值。

$ip=$_SERVER['REMOTE_ADDR']; 
$hash=md5($ip); 
$number = hexdec(substr($hash, 0, 4)); 
$version = $number % 2; 

if($version == 0) { 
    // show A 
} else { 
    // show B 
} 

這是一件好事,因爲一個用戶總會看到相同的版本,它會均勻地塗抹用戶跨兩個版本。

+0

不錯,這應該適合我。謝謝 ! – orchid 2010-11-18 00:30:16

0

這真的取決於你想要多大的重量級解決方案。 Jon的解決方案將工作提供的用戶不是NAT'd,但如果你想防止這個問題,你可以添加一個會話。如果你想要更多的參與和靈活的選擇,那裏有無數的工具,包括phpab