這邊我們先來處理網站標題區,這邊比較麻煩的是瀏灠人次不是採總計,而是分日計算然後再總計;雖然題目沒有指示是否要和第一題一樣的機制,但我們在設計上為了避免瀏灠人次一直跳動,所以還是採用 session 來紀錄使用者的進站狀況,關閉瀏灠器再開才會重新計算;
先在
index.php
中id="title"
的區塊中來顯示目前的日期及星期增加一個 回首頁 的連結,使用
float
讓連結靠右對齊1
2
3
4<div id="title">
<?= date("m 月 d 號 l"); ?> | 今日瀏覽:0 | 累積瀏覽: 0
<a href='index.php' style='float:right'>回首頁</a>
</div>在
index.php
中id='title2'
的區塊中設定標題圖片其中,將alt屬性改成title,並加上
健康促進網-回首頁
文字將標題圖片加上連結,點選標題時可以回到首頁
1
2
3<div id="title2">
<a href='index.php'><img src="./icon/02B01.jpg" title="健康促進網-回首頁"></a>
</div>在
db.php
中增加一個方法來判斷訪客的拜訪狀態,用來決定當日訪客人次是否需要增加
/api/db.php1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17// 如果尚未設定 $_SESSION['visited'],則執行以下程式碼
if(!isset($_SESSION['visited'])){
// 如果今天的日期在資料庫中已存在,則取得該筆資料
if($Total->count(['date'=>date('Y-m-d')])>0){
$total=$Total->find(['date'=>date('Y-m-d')]);
// 將該筆資料的 total 欄位加一
$total['total']++;
// 儲存更新後的資料
$Total->save($total);
}else{
// 如果今天的日期在資料庫中不存在,則新增一筆資料
$Total->save(['total'=>1,'date'=>date('Y-m-d')]);
}
// 設定 $_SESSION['visited'] 為 1,表示已經訪問過
$_SESSION['visited']=1;
}在
index.php
中id="title"
的區塊執行今日瀏灠及累積瀏灠的方法1
2
3
4
5
6<div id="title">
date("m月d日 l"); |
今日瀏覽: $Total->find(['date' => date("Y-m-d")])['total']; |
累積瀏覽: $Total->sum('total');
<a href="index.php" style='float:right'>回首頁</a>
</div>
在檢查時,記得更改一下windows的日期來做檢查,評分時也會被要求更改日期,來確認瀏灠人次是會依日期重新計算,同時可以總計不同日期的總人次