template_dir = "./templates"; $smarty->compile_dir = "./templates_c"; //$adminPass 陣列存放管理者帳號與密碼 //格式: $adminPass['帳號']='密碼' $adminPass = array ( 'tony' => 'secret', 'sophia' => '0810', 'joe' => 'flagpw' ); //定義 $errMsg 變數, 用以存放錯誤訊息 $errMsg=''; //定義 $usrMsg 變數, 用以存放一般訊息 $usrMsg=''; //---------------------- 管理者登入功能------------------------------ //若使用者在登入表單輸入了帳號密碼 if ( ! empty($_POST['username']) && ! empty($_POST['password']) ){ //將 POST 過來的帳號密碼設定給 $username 與 $password 變數 $username=$_POST['username']; $password=$_POST['password']; //$adminPass[$username] 可以取得 $username 帳號的密碼, //如果 $adminPass[$username] 的密碼與使用者輸入的相同, //便開啟管理模式 if ( $adminPass[$username] == $password ) { //$_SESSION['admin'] 變數代表是否開啟管理模式 $_SESSION['admin'] = TRUE; //$_SESSION['adminUser'] 變數存放管理者名稱 $_SESSION['adminUser'] = $username; } else { $errMsg.='帳號密碼不相符
'; } } //---------------------- 管理者登出功能 ----------------------------- //管理者按下登出連結時, 會以 GET 的方式傳入 logout 參數等於 1, //所以如果 $_GET['logout'] 等於 1, 表示要登出, 關閉管理模式 elseif ( $_GET['logout'] == 1 ){ $_SESSION['admin'] = FALSE; $usrMsg.='已經成功登出
'; } //---------------------- 顯示登入表單 ------------------------------- if ( $_SESSION['admin'] == TRUE ) { //如果管理模式已經開啟, 表示登入成功, 故將連線轉向至首頁 index.php header("Location: index.php"); } else { //若未開啟管理模式, 便顯示相關訊息與登入表單 $smarty->assign('usrMsg',$usrMsg); $smarty->assign('errMsg',$errMsg); $smarty->assign('showLoginForm',TRUE); $smarty->display('basic.tpl'); } ?>