在該筆文章或該筆資料的詳細頁面寫入:
<?php
if(isset($_GET['id']) && $_GET['id']!==""){
$news_id = $_GET['id'];
//點擊次數+1
$add_rate_sql = "UPDATE `news` SET `click_rate` = click_rate+1 WHERE id='$news_id'";
$result = mysql_query($add_rate_sql);
?>
<h3>熱門消息 Pop News</h3>
<?php
$show_rate_num_sql="SELECT * FROM `news` WHERE `show_in_front`=1 ORDER BY `click_rate` DESC LIMIT 8";
//這裡的show_in_front的資料會是0或1,用來代表該文章是否要顯示於前台
$result=mysql_query($show_rate_num_sql);
if(mysql_num_rows($result)>0)
{
$num=mysql_num_rows($result);
for($i=0;$i<$num;$i++){
$row=mysql_fetch_array($result);
?>
<a href="news_detail.php?id=<?php echo $row['id'];?>"><?php echo $row['title'];?>(<?php echo $row['click_rate']?>) </a>
<?php
}
}
?>
訂閱 Google 快訊,找到你的文章 :D
回覆刪除如果點閱次數很大量的話,點閱率可以用 message queue 來分擔 Server 寫入資料庫的負擔喔。
或是用 Google Analytics 的自定變數來做,資料庫都省了喔。
加你 G+ , 我是林洛克
好酷,原來ga還有這樣的功能!
刪除