構建網站:使用者的登入認證_PHP教程

來源:互聯網
上載者:User
前面已經介紹了幾個 php 的功能技巧,從現在開始就來充分利用組合這些技巧來構建一個強大的網站,以後會陸續地介紹一些進階和基本的技巧如何在網站中應用.
建立一個好的網站,使用者登認證功能是必不可少的,同樣的在這兒我只是介紹思路和做法,並不會添鴨式地一步一步的列出步驟.
首先需要一個可用來記錄使用者資料的資料庫,其內容應當至少包括姓名和密碼,自然根據需要可在資料庫增加相應的欄位.
為了使資料庫有資料,必須要有個註冊程式,通過註冊使用者可將資料存進資料庫,註冊程式的實現非常地簡單,僅僅是發出存入資料庫的指令,在這裡就不再描述了,這裡要提出的是,出於對使用者資料安全的考慮,最好為使用者的密碼加密,還有資料庫不應出現相同的姓名,否則會亂套.
下面介紹的重點是使用者登入和登出的實現,使用者登入的功能用 session 和 cookie 都能完成,我在這兒要介紹的是如何用 cookie 來完成這個功能的.
其實使用者登入的整個過程理解起來很簡單,程式將使用者輸入的姓名和密碼與資料庫儲存的資料進行對比,資料庫有此使用者的資料就通過,沒有則拒絕該使用者通過.
來看看登入程式 login.php 的工作流程:
使用者提交資料到 login,php,login.php 就會經過如下處理:
$passwd=md5($passwd);
$result=mysql_query("select * from user where name='$name' and passwd='$passwd'");
之所以密碼要經過 md5 處理,是因為資料庫儲存的是經過 md5 加密過的密碼,判斷有無此使用者存在,不存在或密碼錯誤則給出些警示給該使用者,存在此使用者的資料的話,就可以將該使用者的資料設定為 cookie 值,如下:
setcookie("cookiename",$name,time()+18000,"","/");
setcookie("cookiepasswd",$passwd,time()+18000,"","/");
如果擔心使用者因忘記登出而造成安全問題的話,就把時間設定去除:
setcookie("cookiename",$name,"","/");
setcookie("cookiepasswd",$passwd,"","/");
這樣當使用者關閉瀏覽器時,cookie 的設定就失效了,也就是說使用者下一次來的時候,必須重新登入!雖然有了這個關閉瀏覽器就讓 cookie 失效的安全功能,但還是需要一個使用者登出的功能以策安全,登出功能也就是讓記載使用者資料的 cookie 失效的功能,完成這個功能很簡單,只需要將時間置為 -1,並把 cookie 變數置空就行了:
logout.php:
setcookie('cookiename',"",time()-1,'/',"");
setcookie('cookiepasswd',"",time()-1,'/',"");
$cookiename="";
$cookiepasswd="";
這樣一個完整的使用者認證功能就完成了.


http://www.bkjia.com/PHPjc/445179.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/445179.htmlTechArticle前面已經介紹了幾個 php 的功能技巧,從現在開始就來充分利用組合這些技巧來構建一個強大的網站,以後會陸續地介紹一些進階和基本的技巧...

  • 聯繫我們

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