2012-12-06 56 views
2

第一次識別用戶訪問網站頁面的最佳方式是什麼?我寫了一個腳本,顯示了該頁面的瀏覽。由於遊覽應只顯示一次。我需要知道。所有頁面的首次用戶網站導覽

例如,考慮一個域example.com,如果用戶第一次登錄,我需要在'/'頁面上顯示旅程。當用戶導航到'/ page1'時,我應該顯示該旅程頁。當用戶回到'/'我不應該顯示巡視。但是當用戶轉到'/ page2'時,我應該在page2上顯示旅程。

我能夠在用戶第一次登錄時查找到一個查詢。但我怎麼能爲每個頁面做到這一點。我的想法是每次用戶瀏覽時都對數據庫進行查詢,但我知道這不是最好的方式。

注意:Cookies可用於追蹤任何內容。

+0

爲什麼你不使用cookies? –

+1

我聽說你不能將這些信息保存在數據庫中。否則,如果用戶從另一臺計算機登錄,或者他們清除了Cookie,則用戶將再次獲得巡視。 –

+1

@RenéWolferink正確。另一個問題是我必須查詢每個網頁瀏覽數據庫..!我想我從一個答案中得到了一個主意。 –

回答

4

當客戶端登錄時,檢查他訪問的頁面的cookie。

如果cookie是空的,檢查數據庫的連接創建與德客戶端媒體鏈接訪問了

而且網頁新的cookie,每一頁上您檢查Cookie,如果頁面還沒有在裏面,顯示瀏覽並將其添加到cookie(和db),否則什麼都不做:)

Ofcourse db部分將只能與註冊用戶一起使用。另外,不要忘記將用戶標識(或類似的東西)存儲到cookie中並檢查,以便當另一用戶在同一臺​​計算機上瀏覽您的網站時,他仍然會看到該導覽!

東西完全一樣,但可能是在您的情況有用的是 http://notes.xoxco.com/post/36766728425/aware-js-make-your-site-reader-aware

這是一個jQuery插件,因此讓你訪問的跟蹤和改變佈局(今天如首次訪問者,回訪者,但第一次,...)

+2

如果這不是完全清楚,或錯過了什麼,不要猶豫,問你的幫助 –

+0

感謝您..我有一個想法扭轉使用cookie;)旅遊是爲剛剛登錄到網站的用戶。所以默認情況下,當用戶剛剛登錄時,只是在cookie存在時查詢數據庫,並在用javascript查看頁面後刪除cookie;) –

+0

或者我可以在巡迴完成時發送ajax調用以完成數據庫中的更改,使很多意義.. –

1

會話將會很好。事情是這樣的:

if($_SESSION['first-time'] == TRUE){ 
    //Do your thing 
    //Then, mark first-time as FALSE in the database. 
} 

當您創建一個帳戶(假設這是你在做什麼)你舉報此TRUE。在他們第一次登錄後,您將其標記爲FALSE

相關問題