新聞中心
PHP Cookie登錄驗(yàn)證技巧是什么,針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。
我們提供的服務(wù)有:成都網(wǎng)站制作、網(wǎng)站建設(shè)、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、秭歸ssl等。為近1000家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢(xún)和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的秭歸網(wǎng)站制作公司
一個(gè)網(wǎng)站的建設(shè)目的就是功能的完整性。其中有一個(gè)功能就是用戶(hù)登錄驗(yàn)證的實(shí)現(xiàn)。下面我們就向大家詳細(xì)介紹有關(guān)PHP Cookie登錄驗(yàn)證的相關(guān)實(shí)現(xiàn)方法。
PHP Cookie登錄驗(yàn)證代碼示例:
< 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">
用戶(hù)名:< /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保存時(shí)間:< /div>< /td>
< td>< select name="cookie" id="cookie">
< option value="0" selected>瀏覽器進(jìn)程< /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")
//選擇數(shù)據(jù)庫(kù)之前需要先連接數(shù)據(jù)庫(kù)服務(wù)器or die("數(shù)據(jù)庫(kù)服務(wù)器連接失敗");
@mysql_select_db("test") //選擇數(shù)據(jù)庫(kù)mydb
or die("數(shù)據(jù)庫(kù)不存在或不可用");
//獲取用戶(hù)輸入
$username = $_POST['username'];
$passcode = $_POST['passcode'];
$cookie = $_POST['cookie'];
//執(zhí)行SQL語(yǔ)句
$query = @mysql_query("select username,
userflag from users "."where username = '$username' and
passcode = '$passcode'")or die("SQL語(yǔ)句執(zhí)行失敗");
//判斷用戶(hù)是否存在,密碼是否正確
if($row = mysql_fetch_array($query))
{
if($row['userflag'] == 1 or $row['userflag'] == 0)
//判斷用戶(hù)權(quán)限信息是否有效{
switch($cookie) //根據(jù)用戶(hù)的選擇設(shè)置cookie保存時(shí)間
{
case 0: //保存Cookie為瀏覽器進(jìn)程
setcookie("username", $row['username']);
break;
case 1: //保存1天
setcookie("username", $row['username'],
time()+24*60*60);break;
case 2: //保存30天
setcookie("username", $row['username'],
time()+30*24*60*60);break;
case 3: //保存365天
setcookie("username", $row['username'],
time()+365*24*60*60);break;
}
header("location: main.php");
//自動(dòng)跳轉(zhuǎn)到main.php}
else
{
echo "用戶(hù)權(quán)限信息不正確";
}
}
else
{
echo "用戶(hù)名或密碼錯(cuò)誤";
}
?>
PHP Cookie登錄驗(yàn)證代碼實(shí)例:
< ?php
session_start();
if(isset($_COOKIE['username']))
{
@mysql_connect("localhost", "root","1981427")
//選擇數(shù)據(jù)庫(kù)之前需要先連接數(shù)據(jù)庫(kù)服務(wù)器
or die("數(shù)據(jù)庫(kù)服務(wù)器連接失敗");
@mysql_select_db("test") //選擇數(shù)據(jù)庫(kù)mydb
or die("數(shù)據(jù)庫(kù)不存在或不可用");
//獲取Session
$username = $_COOKIE['username'];
//執(zhí)行SQL語(yǔ)句獲得userflag的值
$query = @mysql_query("select
userflag from users "."where username = '$username'")
or die("SQL語(yǔ)句執(zhí)行失敗");
$row = mysql_fetch_array($query);
//獲得用戶(hù)權(quán)限信息
$flag = $row['userflag'];
//根據(jù)userflag的值輸出不同的歡迎信息
if($flag == 1)
echo "歡迎管理員".$_SESSION['username']
."登錄系統(tǒng)";if($flag == 0)
echo "歡迎用戶(hù)".$_SESSION['username']
."登錄系統(tǒng)";echo "< a href="logout.php"
href="logout.php">注銷(xiāo)< /a>";}
else
{
echo "您沒(méi)有權(quán)限訪問(wèn)本頁(yè)面";
}
?>
< ?php
setcookie("username");
echo "注銷(xiāo)成功";
?>
關(guān)于PHP Cookie登錄驗(yàn)證技巧是什么問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。
分享文章:PHPCookie登錄驗(yàn)證技巧是什么
網(wǎng)頁(yè)網(wǎng)址:http://www.dlmjj.cn/article/pigjdc.html