admin.php
<?php
/*---- 必須引入----*/
require_once 'head.php';
$WEB['title'] = "育將電腦工作室";
#程式流程
#整理傳入變數
$op = isset($_REQUEST['op']) ? $_REQUEST['op'] : "";
#程式流程
switch ($op) {
#登入
case "op_login":
#判斷帳密,若正確則轉至 admin/index.php,若不正確則繼續輸入密碼
if (op_login()) {
$_SESSION['admin'] = true;
header("location:admin/index.php");
exit;
}
break;
#登出
case "op_logout":
$_SESSION['admin'] = "";
header("location:index.php");
exit;
break;
#----
//預設動作
default:
$op = "op_list";
break;
}
/*---- 將變數送至樣版----*/
$smarty->assign("WEB", $WEB);
/*---- 程式結尾-----*/
$smarty->display('theme.html');
/*---- 函數區-----*/
#################################
# 使用者登入判斷
# 帳、密正確,返回 true 、不正確 返回 false
#################################
function op_login() {
global $mysqli;
#過濾傳入變數
$_POST['uname'] = $mysqli->real_escape_string($_POST['uname']);
$_POST['password'] = $mysqli->real_escape_string($_POST['password']);
if ($_POST['uname'] == "admin" and $_POST['password'] == "123456") {
return true;
}
return false;
}
登入畫面:
defalut/theme.html
<{* 登入判斷 *}>
<div style='position:fixed;top:1px;left:1px;z-index:10000'>
<{if $smarty.session.admin}>
<a href="admin/index.php"> </a>
<{else}>
<a href="admin.php"> </a>
<{/if}>
</div >
由於這裡用 $_SESSION['admin'] 做判斷
所以在程式裡必須設定預設值,否則程式會報錯
head.php
$_SESSION['admin'] = isset($_SESSION['admin']) ? $_SESSION['admin'] : "";