2012-05-20 22 views
1

我正在用php和mysql開發一個web應用程序。我在我的網站上有視頻,用戶可以上傳他們的視頻。用php創建分析圖表

現在,我想通過爲視頻視圖創建簡單的分析圖表來增加交互性。

圖表將包含每個月的視圖。問題是我不知道從哪裏開始。

任何人都可以告訴我在每個月的數據庫中存儲視頻視圖的邏輯,然後以條形圖的形式查看嗎? (就像谷歌分析說,每個月或每週的訪問者數量)

+1

Google有[圖表工具](https://developers.google.com/chart/)。 – Ami

+0

...或者你可以製作一個整潔的[HTML5應用](http://www.rgraph.net/),或者使用[PHP GD圖像庫](http://www.roseindia.net/tutorial/php/phpgd /)來生成靜態圖像。 –

回答

0

當算一個看法?


您必須定義何時計數視圖。可能最好的做法是分析某個用戶訪問視頻的時間間隔,播放時間以及可能的某些標識符(如他的用戶代理),以便能夠區分IP地址後面的多個用戶(如果用戶不是「 t登錄)。

插入視圖


一旦你決定如果算上一個視圖,你必須把它插入到數據庫中。這取決於你使用的數據庫和表結構。看看PHP MySQL教程,或者如果您認爲自己可以做得更多,請看看PDO,它可以更安全,更實用。

爲了能夠分析每月的統計數據,你必須插入每個視圖與時間戳。最後,你只需要選擇指定日期的值(在你的情況,最後一個月)。

這就要求您至少知道如何設置您的數據庫表,在其中插入數據。

顯示的看法


因爲你必須爲每一個視圖中的條目在你的數據庫,你最好的拍攝是創建一個自動的工作,與總的更新另一個表觀點。這將減少負載,並且還可以防止用戶立即看到視圖計數(如果有人試圖查看計數 - 可能會有幫助 - >他不能立即查看他是否成功)。

創建圖表


首先你要選擇的值。假設您的用戶能夠指定他想要查看視圖的日期範圍,則必須採用此範圍,用它查詢數據庫,然後繼續處理結果。您如何選擇它取決於您想要如何顯示它。如果您想顯示每個月的每一天,則必須按天對影片進行分組。

您如何實際顯示數據是向您開放的。它可能是一些非常簡單的東西,或者可以使用諸如JpGraph之類的東西來創建圖形作爲圖像。我個人使用JpGraph這樣的東西。需要一些努力,但它是值得的努力。

我希望這給了你一個想法如何解決你的問題。如果您有更具體的問題,請發佈一些代碼以及您正在嘗試執行的操作,因爲表示解決方案不存在。

0

有一列表video_id,計數,月份和年份列。 將video_id,month和year組合爲一個唯一密鑰。

每當查看視頻時(以編程術語要求),嘗試插入video_id,1,month和year。 檢查您是否得到唯一的密鑰違規。如果你這樣做,而不是插入你更新count + 1的計數。

要獲取月份和年份,您可以使用MYSQL日期函數。 video_id將從前端發送,計數可以很容易地增加。

一旦擁有此表格,您就可以隨時獲得該月份和年份合併的特定視頻的計數。

1

谷歌圖表將是完美的,你正在尋找做的。我自己使用它們。只需使用PHP json_encode輸出統計信息即可。

然後使用cron作業獲取當前數量的veiws或其他統計數據並將它們存儲在數據類型文本行中。

https://developers.google.com/chart/