本文主要給大家介紹通過PHP&MySQL成功實(shí)現(xiàn)修改密碼 + 防止通過url強(qiáng)行進(jìn)入系統(tǒng)詳細(xì)步驟,文章內(nèi)容都是筆者用心摘選和編輯的,具有一定的針對(duì)性,對(duì)大家的參考意義還是比較大的,下面跟筆者一起了解下通過PHP&MySQL成功實(shí)現(xiàn)修改密碼 + 防止通過url強(qiáng)行進(jìn)入系統(tǒng)詳細(xì)步驟吧。
創(chuàng)新互聯(lián)是專業(yè)的鞏留網(wǎng)站建設(shè)公司,鞏留接單;提供成都網(wǎng)站建設(shè)、成都網(wǎng)站制作,網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行鞏留網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
頁面:
index.php 登陸頁面,輸入默認(rèn)密碼登陸系統(tǒng)
check.php 核查頁面,通過查詢數(shù)據(jù)庫檢測(cè)密碼是否正確 ——> 正確,則進(jìn)入系統(tǒng) 或 錯(cuò)誤,提示“密碼錯(cuò)誤”,返回登錄頁面
system.php 系統(tǒng)頁面,內(nèi)含“修改密碼”鏈接
change.php 輸入新密碼修改頁面
changePwd.php 修改密碼頁面
關(guān)鍵代碼:
index.php
check.php
connect_error) { die("連接失敗: " . $conn->connect_error); } $sql = "SELECT password FROM admin"; //此處涉及名稱是admin的數(shù)據(jù)表,內(nèi)部有name 和password兩個(gè)字段,值分別是admin 和 1 $result = $conn->query($sql); if ($result->num_rows > 0) { while($row = $result->fetch_assoc()) { $adminkey = $row["password"]; //設(shè)$adminkey是管理員密碼,將從數(shù)據(jù)表中讀取的數(shù)據(jù)賦值進(jìn)去 } } $conn->close(); /************************請(qǐng)?jiān)谏戏叫薷墓芾韱T密碼,默認(rèn)是'1' *************************/ if( isset($_POST["submit"]) && $_POST["submit"] = "登錄"){ if($_POST['psd'] == $adminkey){ //如果輸入的密碼和數(shù)據(jù)庫中的默認(rèn)密碼相同,則進(jìn)入系統(tǒng) header("Location:system.php"); exit; }else{ ?> system.php 修改密碼
change.php
changePwd.php
●防止通過url強(qiáng)行進(jìn)入系統(tǒng)
比如,網(wǎng)站名是www.xxx.com,瀏覽者注意到這是某系統(tǒng)的登錄頁面后,可能一試 http://www.xxx.com/system.php 就繞過輸入密碼進(jìn)入了系統(tǒng)。。。?!拘“准?jí)】
可以加一個(gè)檢查頁面 checkInfo.php
先在密碼核查頁面 check.php 更改:
if( isset($_POST["submit"]) && $_POST["submit"] = "登錄"){ if($_POST['psd'] == $adminkey){ session_start(); $_SESSION["loginKey"] = 101; //101隨緣弄的,別的也行 // session 變量用于存儲(chǔ)關(guān)于用戶會(huì)話(session)的信息,或者更改用戶會(huì)話(session)的設(shè)置。Session 變量存儲(chǔ)單一用戶的信息,并且對(duì)于應(yīng)用程序中的所有頁面都是可用的 所以,可利用此,只有通過密碼驗(yàn)證,才會(huì)生成$_SESSION["loginKey"],從而在之后的頁面如system.php 的開頭加入檢查頁面 checkInfo.php ,檢查有沒有生成的$_SESSION["loginKey"] 就可以辨別有沒有繞過密碼強(qiáng)行進(jìn)入 header("Location:system.php"); exit; }else{ ?>
再寫checkInfo.php
舉例
在system.php開頭加入:
...... .. .. ..
注: session_start(); 啟動(dòng)會(huì)話時(shí),之前代碼不能有任何輸出?。ㄈ鏴cho '...'; alert("....");)
建議直接扔到開頭
看完以上關(guān)于通過PHP&MySQL成功實(shí)現(xiàn)修改密碼 + 防止通過url強(qiáng)行進(jìn)入系統(tǒng)詳細(xì)步驟,很多讀者朋友肯定多少有一定的了解,如需獲取更多的行業(yè)知識(shí)信息 ,可以持續(xù)關(guān)注我們的行業(yè)資訊欄目的。