2013-04-30 89 views
1

編輯:跟蹤圖像的外部網站/交通加載外部網站

我要算多少次網頁加載每它加載時間,我想更新的圖像(這是一個jpg文件)來顯示頁面加載的次數。我知道如何更新圖像並將其轉換爲JPG格式,但我想弄清楚的是如何「傾聽」頁面加載。這個頁面是我的服務器的外部...我無法訪問它...只是一個隨機的網頁。

我應該使用什麼方法?

這就是我希望的:

<?php 
    if (webpagevisited('www.stackoverflow.com')) //this would be the function 
     { 
     increase_hit_counter_by_one(); 
     } 

我已經創建了功能increase_hit_counter_by_one()。它使用mySQL數據庫來更新值並過濾重複的IP地址。什麼方法最適合創建webpagevisiited()函數?

+2

告訴你什麼看起來像一個良好的開端。通常會做的是將計數保存在文本文件或數據庫中。有兩種方式的教程 – 2013-04-30 08:51:25

+0

哦,我非常熟悉所有這些,並篩選IP地址等等等等......我只是省略了我的摘錄中的任何不重要的代碼以實現更友好的可讀性:D – 2013-04-30 08:53:55

+0

正如@Pekka웃寫道的,所有問題應該已經解決了。如何尋找您自己的解決方案可能更成爲一個問題。就像你的問題一樣,你用很多詞來形容簡單的事情。很可能你只需要改善你的研究,這就是全部。儘管在這個網站上很難幫助你。 Stackoverflow更適合具體的編程問題。 – 2013-04-30 08:54:38

回答

0

編輯 - 編輯完答案並發表評論後,您可以使用一個簡單的.htaccess(我假設您使用啓用了mod重寫的apache)重寫來修改URL。

<IfModule mod_rewrite.c> 
RewriteEngine on 
RewriteRule ^image_counter.jpg$ image.php [L] 
</IfModule> 

假設的.htaccess是根web目錄與image.php腳本一起,現在你可以使用<img src="http://www.yourwebsite.com/image_conter.jpg" alt="" />和應htaccess的URL重寫你的腳本。檢查Apache網站以獲取更多關於htaccess規則的信息。

使用$_SERVER['HTTP_REFERER'],然後您可以針對您計算的特定URL進行測試。

最後根據需要提供圖片,例如。

header('Content-Type: image/jpeg'); //or other correct mime type 
//output image you created 

您將需要存儲在數據庫或類似的存儲選項「計數」能夠堅持count變量,它會每次都重設頁面加載以DOM正確地指出。

我會推薦作爲最簡單的選擇是讓你的圖像src作爲你的php文件,例如。

<img src="image.php" alt="Hit Counter" /> 

然後在您的image.php文件,您可以檢索已存儲的計數,可能使用MySQL和一個增加它並保存新的計數。然後,只要你喜歡,你可以在你的圖片中顯示你的數量。

事情是這樣的,例如:

<?php 
//get saved count here as $count 
$count++; 
//save new count 
//create image using count and present it. 
?> 
+0

所示建議感謝您的回答:)我熟悉這一點...我現在意識到我可能以非常難以理解的方式提出了我的問題。我想簡單地將圖像保存爲jpg文件,以便任何網頁上的任何其他人都可以使用該圖像。我想跟蹤圖像的使用時間和使用位置,而不需要使用圖像的人員使用任何腳本或.php文件。 – 2013-04-30 09:35:44

+0

我根據您更新的問題和評論修改了答案。希望能幫助到你! – 2013-04-30 09:53:06

+0

謝謝,這似乎最接近回答這個問題。我會對你提到的命令做進一步的研究。 – 2013-04-30 10:07:20

1

我認爲你最好的選擇是$referrer = $_SERVER['HTTP_REFERER'];

這應該告訴你什麼網頁加載圖像,但也可以很容易通過CURL甚至假頭來欺騙。

此外,計數不會存儲在該頁面上,因爲每次加載圖像時都會重置$count

您將需要某種數據庫來存儲/更新匹配。