php session應用執行個體 登入驗證

來源:互聯網
上載者:User

複製代碼 代碼如下:<html>
<head>
<title>Login</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body>
<form name="form1" method="post" action="login.php">
<table width="300" border="0" align="center" cellpadding="2" cellspacing="2">
<tr>
<td width="150"><div align="right">使用者名稱:</div></td>
<td width="150"><input type="text" name="username"></td>
</tr>
<tr>
<td><div align="right">密碼:</div></td>
<td><input type="password" name="passcode"></td>
</tr>
<tr>
<td><div align="right">Cookie儲存時間:</div></td>
<td><select name="cookie" id="cookie">
<option value="0" selected>瀏覽器進程</option>
<option value="1">儲存1天</option>
<option value="2">儲存30天</option>
<option value="3">儲存365天</option>
</select></td>
</tr>
</table>
<p align="center">
<input type="submit" name="Submit" value="Submit">
<input type="reset" name="Reset" value="Reset">
</p>
</form>
</body>
</html>

複製代碼 代碼如下:<?php
@mysql_connect("localhost", "root","1981427") //選擇資料庫之前需要先串連資料庫伺服器
or die("資料庫伺服器串連失敗");
@mysql_select_db("test") //選擇資料庫mydb
or die("資料庫不存在或不可用");
//擷取使用者輸入
$username = $_POST['username'];
$passcode = $_POST['passcode'];
//執行SQL語句獲得Session的值
$query = @mysql_query("select username, userflag from users "
."where username = '$username' and passcode = '$passcode'")
or die("SQL語句執行失敗");
//判斷使用者是否存在,密碼是否正確
if($row = mysql_fetch_array($query))
{
session_start(); //標誌Session的開始
//判斷使用者的許可權資訊是否有效,如果為1或0則說明有效
if($row['userflag'] == 1 or $row['userflag'] == 0)
{
$_SESSION['username'] = $row['username'];
$_SESSION['userflag'] = $row['userflag'];
echo "<a href="main.php" href="main.php">歡迎登入,點擊此處進入歡迎介面</a>";
}
else //如果許可權資訊無效輸出錯誤資訊
{
echo "使用者權限資訊不正確";
}
}
else //如果使用者名稱和密碼不正確,則輸出錯誤
{
echo "使用者名稱或密碼錯誤";
}
?>

複製代碼 代碼如下:<?php
unset($_SESSION['username']);
unset($_SESSION['passcode']);
unset($_SESSION['userflag']);
echo "登出成功";
?>

複製代碼 代碼如下:<?php
session_start();
if(isset($_SESSION['username']))
{
@mysql_connect("localhost", "root","1981427") //選擇資料庫之前需要先串連資料庫伺服器
or die("資料庫伺服器串連失敗");
@mysql_select_db("test") //選擇資料庫mydb
or die("資料庫不存在或不可用");
//擷取Session
$username = $_SESSION['username'];
//執行SQL語句獲得userflag的值
$query = @mysql_query("select userflag from users "
."where username = '$username'")
or die("SQL語句執行失敗");
$row = mysql_fetch_array($query);
//判斷當前資料庫中的許可權資訊與Session中的資訊比較,如果不同則更新Session的資訊
if($row['userflag'] != $_SESSION['userflag'])
{
$_SESSION['userflag'] = $row['userflag'];
}
//根據Session的值輸出不同的歡迎資訊
if($_SESSION['userflag'] == 1)
echo "歡迎管理員".$_SESSION['username']."登入系統";
if($_SESSION['userflag'] == 0)
echo "歡迎使用者".$_SESSION['username']."登入系統";
echo "<a href="logout.php" href="logout.php">登出</a>";
}
else
{
echo "您沒有許可權訪問本頁面";
}
?>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.