2012-12-08 30 views
0

我正在創建病毒郵件功能 - 它使用PHP: uniqid - Manual或類似的東西創建了一個獨特的鏈接,供用戶共享。當點擊其獨特鏈接的用戶註冊時,該用戶將獲得免費「積分」獎勵。我應該如何跟蹤我的用戶的電子郵件邀請

我的問題:如何跟蹤用戶的朋友到「註冊完成」頁面 - 這樣我可以獎勵用戶?

我最好的猜測:1)設置一個cookie來識別用戶的朋友何時到達「註冊完成」頁面? 2)或直接帶用戶朋友註冊頁面,然後解析鏈接並在註冊表單的隱藏字段中放置唯一標識。例如:http://FunNewSite.org/register.php?key=14usdijf8923u5

我的問題是類似的這些:How to generate unique urls to track user signups?

rails beta request signup with social media sharing reward

但是這些問題的答案不包含足夠的細節對我來說什麼是最好的辦法我的應用程序識別這個新的用戶註冊事件?

感謝提前:)

回答

1

在URL中包含的關鍵像你上面的顯示,那麼你可以通過PHP訪問:

<?php 
$key = isset($_REQUEST['registration_key']) ? $_REQUEST['registration_key'] : ''; 
$key = preg_replace('/[^a-z0-9]/i', '', $key); // Strip out any non alphanumeric characters 
?> 

而在你的HTML打印:

<input type="hidden" name="registration_key" value="<?php echo $key; ?>" />

您可以根據需要添加任何其他跟蹤邏輯(例如,如果您想記錄他們開始註冊但從未完成它)。

然後,您只需檢查登錄發送時驗證密鑰的時間。

編輯

你可以去使用cookie,如果你想「記住」用戶的鏈接前幾天點擊,然後通過直接輸入回到您的網站,點擊的路徑「註冊」。

無論您是否想將推薦用戶退還給推薦用戶,都取決於您。但除非你想這樣做,否則你不需要cookies來完成這件事。

+0

謝謝,科林!我會嘗試你的解決方案。希望它有效:) – Jay

0

發送邀請後,只需將userId和密鑰保存在數據庫中。註冊後或註冊後,您可以從您提供的密鑰中找到發件人的用戶標識。

+0

謝謝,但我正在尋找一種自動的方式來做到這一點。我希望我的代碼能夠完成這項工作:) – Jay

相關問題