2013-12-23 76 views
-1

我正在開發一個應用程序來存儲使用set_cookie()訪問我的網站的總訪問者。但是,在開發該應用程序的同時,我還有一個關於這個問題的想法,即如果用戶是來自另一個系統的訪問,我如何跟蹤他。如何統計真正的在線訪問者數量?

困惑我的意思是?

別擔心,我會解釋。

讓我們來想象一個人訪問我的網站,通過一個系統,我的代碼將認識到這一點的人,將自己的IP地址存儲到數據庫中,並算作一個新user.No問題。但是這個人從另一臺電腦/手機/標籤訪問它也將算作一個新用戶。

我不想使用登錄系統。 有什麼辦法可以防止這種情況發生?任何想法?

+0

什麼您試圖實現的是一個數百萬美元的問題,跨設備映射用戶。儘管我無法真正說出它的道德標準,但其中一種方式是使用用戶在Facebook或Google或其他跨設備的此類服務上登錄狀態。 –

+0

投票不涉及任何方式。 – BoltClock

回答

1

你無法檢測到人只有你可以檢測到IP地址..但如果你犯了一個記錄系統,那麼你就可以檢測到正確的人,無論從什麼機器,他logged..and如果您使用IP你只能得到吝嗇多人如何定位到您的網站

1

只有一種方法可以實現隱私。提供一種身份驗證機制,以便只有登錄的用戶才能看到您的網站。這樣,你將獲得這些信息。

如果您不想創建單獨的用戶標識和密碼並進行維護,請使用類似OpenID的內容,這樣如果用戶希望標識自己,他會這樣做。

試圖識別用戶沒有他們的協議可能會在世界的一些地方非法的。

+0

你的認證機制是什麼意思? –

+0

我的意思是向用戶提供用戶名和密碼,並創建一個登錄表單,他可以登錄到您的網站。 – Buddha

0

只能可靠通過登錄系統跟蹤唯一用戶,你或其他人。 IP地址通常是動態分配的,因此同一臺設備上的同一用戶在下次訪問時將擁有不同的IP。

2

使用Cookie標識唯一用戶,然後自顧自地軌道的最後一次訪問的PHP頁面的價值。然後提出一個超時機制 - 例如,如果他們在15分鐘內沒有訪問過一個頁面,那麼他們將從計數中刪除。

0

你可以簡單地顯示您的用戶數。或者,如果你的網站不包含用戶登錄功能那麼有沒有其他辦法則除IP地址這裏是該

$log = 'count.log';//create a log file name count 
$IP = getenv (REMOTE_ADDR);// get ip address 
$add = true; 
$hits = 0; 
if (!file_exists ($log)) { 
    echo "Error: $log does not exist."; 
    exit; 
} 
$h = fopen ($log, 'r'); 
while (!feof ($h)) { 
    $line = fgets ($h, 4096); 
    $line = trim ($line); 
    if ($line != '') 
     $hits++; 

    if ($line == $IP) 
     $add = false; 
} 

fclose($h); 

if ($add == true) { 
    $h = fopen ($log, 'a'); 
    fwrite($h, "$IP"); 
    fclose($h); 
    $hits++; 
} 

echo $hits; 

代碼包含這個文件在你的頁面,你想展示櫃臺

+0

寫在評論它會得到你的系統IP地址 – deepak