登入與登出系統功能

需要資料庫zs,新增資料表user,新增欄位prio,表示每一個帳號的優先權,管理者的prio為0,就可以導向admin.php啟用管理者的功能。

Step1)建立檔案db-connect.php,如下,用於連線資料庫。

資料庫zs的資料表user的欄位與資料如下,可以自行修改帳號與密碼。其中帳號zs1為管理者,他的prio為0。

Step2)以下為login.php,下方為登入的表單,登入後呼叫自己,將輸入的帳號與密碼建立SQL(第8行),到資料庫進行查詢(第9行),關閉資料庫(第10行),若有查詢到此使用者(第11行),設定Session的acc與prio(第12到14行),根據prio決定要導向哪一個頁面(第15到17行),分成三種使用者。

執行結果如下,輸入帳號與密碼,點選「登入」

Step3)以下為admin.php,先檢查$_SESSION['prio']是否有設定,沒有就重新導向login.php(第4行),檢查$_SESSION['prio']是否為0,不是就重新導向login.php(第5行),如果有設定$_SESSION['acc'],將$_SESSION['acc']儲存到$acc(第6到7行),否則重新導向login.php(第8到10行)

網頁呈現登入的使用者帳號(第20行),提供登出功能(第21行)。

執行結果如下,顯示登入使用者帳號,下一行提供登出連結。

Step4)以下為logout.php,使用session_destroy結束Session(第4行)重新導向login.php(第5行)

執行結果如下,執行登出後,重新導向login.php。