您好,登錄后才能下訂單哦!
小編給大家分享一下怎么實(shí)現(xiàn)php基于cookie登錄,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
php制作記住密碼自動(dòng)登錄的解決思路,其實(shí)也就是對(duì)session,cookies的操作。
首先,我們需要一個(gè)html模板,里面寫好表單元素,寫上姓名,密碼以及登錄按鈕,并將此文件命名為login.php,我們登錄頁(yè)面主要是在此頁(yè)面進(jìn)行。
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8" /> <title>請(qǐng)登錄</title> </head> <body> <form method="post" action="login.php"> 姓名:<input type="text" name="username" /> 密碼:<input type="password" name="password" /> <input type="submit" name="submit" value="登錄" /> </form> </body> </html>
我們有了html模板還不夠,我們需要將值傳遞出去,假設(shè)本網(wǎng)站只有唯一一個(gè)會(huì)員(或是用戶),我們需要將姓名與用戶的名字進(jìn)行匹配,如不是,將無(wú)法登錄,此代碼如下:
if (isset($_POST['submit'])) { if(isset($_POST['username']) && isset($_POST['password']) && $_POST['username']==='cmcc' && $_POST['password']==='123456'){ if (setcookie('username',$_POST['username'],time()+3600)) { header('Location:lesson9.php?url=lesson8.php&&=登錄成功,正在跳轉(zhuǎn)中!'); }else{ echo 'cookie設(shè)置失敗!'; } }else{ header('Location:lesson9.php?url=lesson8.php&&=用戶名或密碼填寫錯(cuò)誤,登錄失敗!'); } } ?>
登錄后再訪問(wèn)次網(wǎng)站,不應(yīng)顯示需要登錄,為次我們需要設(shè)置一個(gè)if
函數(shù),來(lái)判斷一下。
<?php if (isset($_COOKIE['username'])&&$_COOKIE['username']==='cmcc') { exit("您已經(jīng)登錄請(qǐng)不要重復(fù)登錄"); }
為了接受此數(shù)據(jù)以及登錄錯(cuò)誤重新登錄,我們需要新建一個(gè)文件weclome.php,在里面寫上:
<?php if (isset($_COOKIE['username'])&&$_COOKIE['username']==='cmcc') { echo "親愛的{$_COOKIE['username']}您好,歡迎回來(lái)!"; }else{ echo "<a href='lesson7.php'>請(qǐng)登錄</a>"; } ?>
這時(shí)候我們就完成了登錄頁(yè)面的所有操作,下面給出login.php的完整代碼,方便參考。
<?php header('Content-type:text/html;charset=utf-8'); if (isset($_COOKIE['username']) && $_COOKIE['username']==='sunshengli') { exit('您已經(jīng)登錄請(qǐng)不要重復(fù)登錄'); } if(isset($_POST['submit'])){ if(isset($_POST['username']) && isset($_POST['password']) && $_POST['username']==='sunshengli' && $_POST['password']==='123456'){ if(setcookie('username',$_POST['username'],time()+3600)){ header('Location:skip.php?url=index.php&info=登錄成功,正在跳轉(zhuǎn)中!'); }else{ echo 'cookie設(shè)置失??!'; } }else{ header('Location:skip.php?url=index.php&info=對(duì)不起,用戶名或密碼填寫錯(cuò)誤,登錄失??!'); } } ?> <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8" /> <title>請(qǐng)登錄</title> </head> <body> <form method="post" action="login.php"> 姓名:<input type="text" name="username" /> 密碼:<input type="password" name="password" /> <input type="submit" name="submit" value="登錄" /> </form> </body> </html>
以上是“怎么實(shí)現(xiàn)php基于cookie登錄”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。