平臺:PHP5中,MySQL跟蹤網頁瀏覽和顯示每天,每週,每月的結果
我有一個顯示被整理到類別物品的網站。我想跟蹤每篇文章的觀看次數。然後,在側邊欄中,顯示當天前5個文章的查看文章,過去溫文爾雅,上個月內的文章。你認爲最好的方法是什麼?每個視圖的數據庫中有一行(article_id,timestamp)?服務器的最少工作量是多少?
謝謝,喬
平臺:PHP5中,MySQL跟蹤網頁瀏覽和顯示每天,每週,每月的結果
我有一個顯示被整理到類別物品的網站。我想跟蹤每篇文章的觀看次數。然後,在側邊欄中,顯示當天前5個文章的查看文章,過去溫文爾雅,上個月內的文章。你認爲最好的方法是什麼?每個視圖的數據庫中有一行(article_id,timestamp)?服務器的最少工作量是多少?
謝謝,喬
如何:
添加此爲php.ini
auto_append_file = /server_root/footer.php
footer.php含有一種無聲的程序來編寫SQL數據。
這可能會成爲一個棘手的問題。如果您只存儲原始匹配,您的表格將快速增長,並且處理這些數字會變得更加耗時。所以,處理這個問題的一種方法是創建聚合表並使用cron作業來處理數字。
例如,你可以有以下表
然後處理在hit_count表中的數據,將其添加到總表,然後刪除該數據hit_count表。
您還需要考慮如果某人刷新頁面或Google抓取文章會發生什麼情況。你想把這些作爲點擊數嗎?
爲了防止抓取工具觸發點擊,您可以使用頁面上的一些Javascript語言來與您的服務器進行通信並註冊點擊。這樣,一個普通的瀏覽器將觸發命中,但爬蟲不會。
我會使用PHP的$ _SERVER變量來填充客戶端和頁面數據,然後寫入該行。然後,側面板可以通過使用SQL查詢來顯示訪問次數,該查詢按文章ID進行過濾,並使用mysql_num_rows()對其進行計數 – Tim