SESSION變量只能在服務(wù)端設(shè)置,剛剛打開(kāi)頁(yè)面是沒(méi)有這個(gè)變量的,自動(dòng)登陸需要cookie變量,這個(gè)可以保存在客戶機(jī)上,設(shè)置方法和session差不多哦。
創(chuàng)新互聯(lián)建站主要從事成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)額爾古納,10年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):028-86922220
你寫(xiě)注冊(cè)頁(yè)面,如果要在這個(gè)頁(yè)面驗(yàn)證并彈出提示框就要用到j(luò)s,也可以提交給一個(gè)php頁(yè)面處理,post到一個(gè)php文件,對(duì)注冊(cè)信息進(jìn)行過(guò)濾,符合就添加不符合繼續(xù)注冊(cè),信息符合后就連接數(shù)據(jù)庫(kù),插入這條數(shù)據(jù)。
先用PHP獲得用戶輸入的帳戶名跟密碼,然后修為條件在數(shù)據(jù)庫(kù)里進(jìn)行查詢,如果有記錄就登陸成功,否則登陸失敗。
吧$Password和$row[Password]輸出出來(lái)看下,不過(guò)一般不這樣驗(yàn)證,直接吧帳號(hào)和密碼帶入mysql中查詢是否有記錄即可。
當(dāng)用戶登陸的時(shí)候,檢測(cè)和用戶uid相關(guān)的token表,如果已經(jīng)有token了,并且本次的設(shè)備唯一識(shí)別號(hào)和已經(jīng)登陸的識(shí)別號(hào)不一樣,那么清空原有token,也就是將原來(lái)登陸的賬號(hào)踢下線。記錄新的設(shè)備識(shí)別號(hào)的token即可。
下面來(lái)看個(gè)實(shí)例判斷用戶登陸主要分幾個(gè)過(guò)程,第一步是用戶登陸成功后把數(shù)據(jù)保存到session中,然后當(dāng)用戶訪問(wèn)需要登陸過(guò)的用戶權(quán)限時(shí)就來(lái)判斷session是否為空,如果不是就登錄成功。
應(yīng)該是沒(méi)登錄,就跳到登錄頁(yè)面吧.一般常用的是cookie判斷一下該用戶的cookie信息是否存在,如果不存在就要求用戶登陸在用戶登錄的時(shí)候,如果是合法用戶就設(shè)定cookie。
在用戶的登錄出設(shè)置session,你得想通這個(gè)邏輯。 當(dāng)用戶提交信息與從數(shù)據(jù)庫(kù)里查詢的信息比對(duì)成功,下一步就設(shè)置個(gè)session來(lái)標(biāo)記用戶登錄成功。在其他頁(yè)面就可以通過(guò)判斷設(shè)置的session來(lái)獲取是否登錄的信息了。
首先你肯定要有用戶的數(shù)據(jù),你才能根據(jù)數(shù)據(jù)判斷用戶是否為會(huì)員。會(huì)員的信息一般都會(huì)在登錄的時(shí)候保存在cookie或者session中,取出來(lái)就好。
1、如果不是 ,那么可能會(huì)失敗。還有一種可能,這個(gè)登錄按鈕綁定了JS事件,你要順著這個(gè)按鈕的類名或者ID去排查一下,看看是否是JS寫(xiě)錯(cuò)了。黑馬程序員的PHP是國(guó)內(nèi)最早開(kāi)設(shè)的真正人工智能課程。課程全面系統(tǒng),緊跟時(shí)代潮流。
2、當(dāng)程序運(yùn)行到 $row=mysql_fetch_array($result); 的時(shí)候。 $result 里面什么也沒(méi)有。因?yàn)?mysql_query 發(fā)送的時(shí)候什么也沒(méi)發(fā)出。跟本沒(méi)辦法返回什么結(jié)果給你。
3、WHERE idno=$_POST[‘idno’]啊,不然你把dlyz表里的數(shù)據(jù)一行一行全弄出來(lái)了怎么比較啊。錯(cuò)誤很多,調(diào)試模式下請(qǐng)把php.ini里邊的ERROR_REPORT設(shè)成E_ALL,DISPLAY_ERROR設(shè)成1,這樣會(huì)顯示你在第幾行出了什么錯(cuò)誤。
4、if($_POST[id]==$a) $a 不能用單引號(hào)括起來(lái),要么用雙引號(hào),要不不用,單引號(hào)擴(kuò)住的話,它不會(huì)編譯,只會(huì)把它堪稱是字符串 $a 來(lái)看待。
5、單引號(hào)內(nèi)的變量不會(huì)被解析,只會(huì)當(dāng)作字符串,你的sql拼接有問(wèn)題。echo的js代碼用問(wèn)題,alert后要加分號(hào),而不是逗號(hào),history.go(-1); 這里也要加分號(hào)。
6、第二,session登錄的話,要開(kāi)啟session,還要注冊(cè),然后給session變量賦值,第三,登錄的時(shí)候看前面一個(gè)地址是不是你的登陸地址,防止別人暴力破解。兄弟,祝你好運(yùn),。我說(shuō)的地方你注意下就可以了。