|
淺談php用戶身份認(rèn)證(四) 爆米花 2001 12,28 www.westxj.net 大家好,前面幾節(jié)講了這個(gè)基于http單用戶和多用戶的密碼驗(yàn)證的編寫程序的方法,這種方法對(duì)于需要身份驗(yàn)證的頁(yè)面,是最好不過(guò)的了。但是,這種驗(yàn)證不能在cgi模式的php,iis下的php使用。所以,我們就可以利用session在不同頁(yè)面之間來(lái)保存用戶信息,達(dá)到驗(yàn)證的目的。 session是指一個(gè)終端用戶與交互系統(tǒng)進(jìn)行通信的時(shí)間間隔,通常指從注冊(cè)進(jìn)入系統(tǒng)到注銷退出系統(tǒng)之間所經(jīng)過(guò)的時(shí)間。session功能是它通過(guò)php腳本中定義全局變量的方法,使得這個(gè)全局變量在同一session中所有的php腳本都有效。 以下為用戶登陸表單處理程序: <? $db=mysql_connect("localhost","root","1234"); //連接數(shù)據(jù)庫(kù)服務(wù)器 mysql_select_db("Jane",$db); //連接數(shù)據(jù)庫(kù) $result=mysql_query("SELECT * FROM user where name='$name' and password='$pass'",$db); //送查詢是字符串到數(shù)據(jù)庫(kù) if ($myrow = mysql_fetch_row($result)) //如果記錄指針為真 { session_start(); //session初始化 session_register("user");//注冊(cè)u(píng)ser變量 $user=$myrow["user"]; echo "驗(yàn)證成功!"; } else { echo"身份驗(yàn)證失敗!"; } ?> 將下面的程序加入要保護(hù)的頁(yè)面開頭: <? session_start(); if (!session_is_registered("user"))//檢查session變量是否注冊(cè) { echo "驗(yàn)證失敗,屬非法登錄!"; } else { ......
} ?>
|
溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!