2010-04-22 61 views
1

的網頁瀏覽量雙重遞增我有一些基本的網頁瀏覽遞增代碼建立一個LAMP服務器(請參閱下面的代碼)。PHP會話:在Firefox3的和Chrome4瀏覽

代碼啓動一個會話,如果檢查瀏覽量被設置,它遞增如果不是,並打印該變量。該頁面通過單個href鏈接到自身,然後單擊該鏈接會使屏幕上顯示的瀏覽量計數增加1。它在IE8,Safari4和Opera10中正常工作。但是在Firefox3和Chrome4中,每次點擊鏈接時都會增加2。我正在使用Chrome和Firefox的全新安裝,並且我也在Firefox安全模式下嘗試了這一點。

奇怪的是,我有相同的代碼在同一服務器上的其他活動站點工作正常。

這可能更多的是瀏覽器的問題不是一個PHP的問題:-)

預先感謝您的幫助!

<? 
// start session 
session_start(); 

// increment page views 
if (isset($_SESSION['pageviews'])) { 
$_SESSION['pageviews'] ++; 
} 

// if new session, set page views at 1 and capture source URL 
else { 
$_SESSION['pageviews'] = 1; 
$_SESSION['sourceurl'] = $_SERVER['HTTP_REFERER']; 
} 

// capture user ip address 
$ipaddress = $_SERVER['REMOTE_ADDR']; 
?> 
+2

你應該看你的Web服務器的訪問日誌,而測試這個。這可能會更清楚地看到究竟是要求什麼,或回來。 另外,火狐,檢查出的HttpFox插件,看看瀏覽器究竟是如何發出請求,什麼反應都。 – 2010-04-22 15:44:42

+0

好主意。我剛剛開始使用Web開發(可能很明顯)。上校彈片解決了這個特定的問題,但我想我會做你的好意提出什麼學習的東西的緣故。謝謝! – Adam 2010-04-22 15:53:23

回答

1

最常見的原因是不正確的人類可讀的網址實現,當路由器作爲一個404處理器,因此,不存在的favicon.ico會再拍請求;)

+0

謝謝,上校 - 你釘了它!我添加了一個favicon,它現在可以在兩個瀏覽器中正常工作。但是你的回答有點凌駕於我的頭上。你是說我的Apache服務器不正確地處理URL或瀏覽器是? – Adam 2010-04-22 15:50:33

+0

@Adam你的index.php應該區分請求和服務只有預期的。說它應該只計算/請求,而不是別的。所有請求模式必須預先寫入您的腳本中 如果沒有匹配,則不得使用陽離子,而必須拋出404錯誤 – 2010-04-23 04:35:50