2012-04-23 41 views
0

我只是顯示新聞提要,而我的問題是我想讓用戶對項目進行評分。我讀到,我需要將它們存儲在數據庫中如果我想排名它,但如何?這是我的代碼:如果我只是在我的網站上顯示新聞,我如何評價我的消息(如5星)?

$data = file_get_contents('https://news.google.com.mx/news/feeds?hl=es&gl=us&q='.tennis.'&um=1&ie=UTF-8&output=rss'); 

$xml = new SimpleXMLElement($data); 
$channel = array(); 
$channel['title']  = $xml->channel->title; 

foreach ($xml->channel->item as $item) 
{ 
    echo $article['pubDate'] = $item->pubDate; 
    echo $article['description'] = (string) trim($item->description); 
} 

有人可以給出如何做到這一點的想法?我想我應該閱讀,然後插入數據庫,然後我不知道。我需要設計排名表。有沒有什麼好的教程?

+0

這是一個非常寬泛的問題......你可能會得到更多有用的答案,如果你可以問更具體的東西... – McGarnagle 2012-04-23 01:57:53

+0

也許只是想法會好的,我只想知道你的方法是什麼? – 2012-04-23 02:09:30

+0

好的,這是有道理的。 – McGarnagle 2012-04-23 02:11:49

回答

1

從你如何描述它,我會說有3個實體參與:新聞報道,評級本身,以及做評級的用戶。

  1. 您需要一張新聞報道表。你將不得不弄清楚如何識別每個故事(可能通過它的URL或somesuch)。您還需要一種機制,以便將來自Feed的新故事插入數據庫,同時避免重複。 (原因是,將新聞Feed的整個URL存儲在系統中進行評分並不是一個好主意,因爲這會佔用不必要的空間並減慢查詢速度。)

  2. 用戶表。你需要一些認證機制,以便知道誰在投票。您還需要編寫查詢來驗證沒有一個用戶可以在同一篇文章上多次投票。

  3. 最後是收視率表。這將引用用戶故事上面的表格使用外鍵引用,並且將包含用於評級的單個數字列。

我覺得上面的是一個很好的數據庫設計爲您的應用...

+0

感謝回答假設用戶有幾個故事theres一個n-n關係,所以我添加另一個表是嗎?但評級它只是一個1-1關係? – 2012-04-23 02:29:54

+0

@RickSalad不,我認爲用戶和故事之間沒有直接關係,是嗎?直接關係是評分,這是1-n。新聞報道與收視率也有1-n的關係。 – McGarnagle 2012-04-23 02:34:08

+0

但如果用戶選擇他的故事? – 2012-04-23 02:36:44

相關問題