0%

[技能檢定]題組二 步驟4 建置網站標題區

這邊我們先來處理網站標題區,這邊比較麻煩的是瀏灠人次不是採總計,而是分日計算然後再總計;雖然題目沒有指示是否要和第一題一樣的機制,但我們在設計上為了避免瀏灠人次一直跳動,所以還是採用 session 來紀錄使用者的進站狀況,關閉瀏灠器再開才會重新計算;

  1. 先在 index.phpid="title" 的區塊中來顯示目前的日期及星期

  2. 增加一個 回首頁 的連結,使用 float 讓連結靠右對齊

    1
    2
    3
    4
    <div id="title">
    <?= date("m 月 d 號 l"); ?> | 今日瀏覽:0 | 累積瀏覽: 0
    <a href='index.php' style='float:right'>回首頁</a>
    </div>
  3. index.phpid='title2' 的區塊中設定標題圖片

  4. 其中,將alt屬性改成title,並加上 健康促進網-回首頁 文字

  5. 將標題圖片加上連結,點選標題時可以回到首頁

    1
    2
    3
    <div id="title2">
    <a href='index.php'><img src="./icon/02B01.jpg" title="健康促進網-回首頁"></a>
    </div>
  6. db.php 中增加一個方法來判斷訪客的拜訪狀態,用來決定當日訪客人次是否需要增加
    /api/db.php

    1
    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;
    }

  7. index.phpid="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的日期來做檢查,評分時也會被要求更改日期,來確認瀏灠人次是會依日期重新計算,同時可以總計不同日期的總人次