php實現使用者登陸簡單的方法

來源:互聯網
上載者:User
這篇文章主要介紹了php實現使用者登陸簡單一實例的相關資料,需要的朋友可以參考下

php實現使用者登陸簡單一實例

前言:

最近要完成的最後一個部分,就是對使用者提交的資料進行管理,至於管理,那肯定就是管理員的事了,那一定涉及登陸,驗證帳號許可權,帳號是否到期等等問題。

所需知識

session,確實是很重要的東西。並且我遇到session不能跨頁,修改PHP.ini的session.use_trans_sid = 0值為1。

具體實現

我的後台設計的比較簡單,只需輸入一個密碼即可,這個密碼當然是儲存在伺服器可以更改的啦。所以只需要給session添加兩個變數,flag、time。

首先,用flag來確定管理員是否成功登陸,用time確定登陸是否逾時。提交密碼後,如果正確會給flag賦值為1,time賦值為目前時間。每次進入新的頁面或進行操作時會對這兩個變數進行判斷,首先判斷flag值是否為1,不唯一直接提示未登陸,銷毀session,如果為1,再判斷目前時間-$_SESSION(‘time')是否小於600(10分鐘),若大於,提示登陸逾時,銷毀session;若小於,允許操作,並更新time變數值為當前值。

部分代碼

check_pw.php

<?phpsession_start();$_SESSION['flag'] = 0;$myfile = fopen("passwd","r") or die("Unable to open file!");$passwd = fgets($myfile);if(empty($_POST['pass'])){  echo "不可為空,重新輸入";  $page = "login.html";}else{  $pass = $_POST['pass'];  $passwd = test_input($passwd);  $pass = test_input($pass);  if($pass == $passwd){    echo "口令正確,允許訪問";    $page = "list_all.php";    $_SESSION['flag'] = 1;    $_SESSION['time'] = time(); //當前秒數  }else{    echo "口令錯誤,重新輸入";    $page = "login.html";  }}function test_input($date){  $date = trim($date);  $date = stripcslashes($date);  $date = htmlspecialchars($date);  return $date;}?>  <a href="<?php echo $page;?>" rel="external nofollow" >點此跳轉</a>

list_all.php(部分)

<?phpsession_start();if($_SESSION['flag'] == 1){  if(time() - $_SESSION['time'] > 600){    echo "登陸逾時";    echo '<a href="login.html" rel="external nofollow" rel="external nofollow" >點此登陸</a>';    session_destroy();    exit();  }else{  $_SESSION['time'] = time();  }}else{  echo "未登陸,無權訪問!";  echo '<a href="login.html" rel="external nofollow" rel="external nofollow" >點此登陸</a>';  session_destroy();  exit();}?>

以上就是本文的全部內容,希望對大家的學習有所協助。


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.