php使用者註冊登入系統(tǒng)之登入處理頁面
登入處理頁面
流程圖如下:
程式碼如下:
<?php session_start(); //登錄處理界面 logincheck.php //判斷是否按下提交按鈕 if(isset($_POST["hidden"]) && $_POST["hidden"] == "hidden") { //將用戶名和密碼存入變量中,供后續(xù)使用 $user = trim($_POST["username"]);//trim()函數(shù)移除字符串兩側的空白字符 $psw = md5(trim($_POST["userpwd"]));//密碼使用md5()加密一次,存入數(shù)據(jù)庫 $code = $_POST["code"]; if($user == "" || $psw == "") { //用戶名或者密碼其中之一為空,則彈出對話框,確定后返回當前頁的上一頁 echo "<script>alert('請輸入用戶名或者密碼!'); history.go(-1);</script>"; }else if($code != $_SESSION[' ver_code']){ echo "<script>alert('驗證碼不正確,請重新輸入!'); history.go(-1);</script>"; } else { //確認用戶名密碼驗證碼不為空,則連接數(shù)據(jù)庫 $conn = mysqli_connect("localhost","root","root");//數(shù)據(jù)庫帳號密碼為安裝數(shù)據(jù)庫時設置 if(mysqli_errno($conn)){ echo mysqli_errno($conn); exit; } mysqli_select_db($conn,"userdb"); mysqli_set_charset($conn,'utf8'); $sql = "select username,userpwd from user where username = '$user' and userpwd = '$psw'"; $result = mysqli_query($conn,$sql); $num = mysqli_num_rows($result); if($num) { echo "<script>alert('成功登錄'); window.location.href='index.php';</script>"; } else { echo "<script>alert('用戶名或密碼不正確!');history.go(-1);</script>"; } } } else { echo "<script>alert('提交未成功!');</script>"; } ?>
程式碼解釋:
當在登入頁面點擊登入時進入登入處理頁面
判斷post方式傳過來的$_POST["hidden"]是否存在,不存在則提示提交未成功,返回登入介面,存在則繼續(xù)。
將傳過來的值取得到(利用trim()函數(shù)過濾空白字符,密碼使用md5()函數(shù)加密),然後判斷是否為空,為空則彈出提示,返回登入介面,不為空則繼續(xù)
判斷post方式傳遞過來的驗證碼值與先前存在session裡面的驗證碼值是否相等,不相等則提示驗證碼不正確,返回登入頁面,相等則繼續(xù)執(zhí)行
連接資料庫、選擇我們建立的資料庫、設定字元集、透過使用者名稱和密碼查詢資料庫,判斷使用者名稱和密碼是否存在於資料庫,不存在則提示使用者名稱或密碼不正確,返回登入頁面,存在則提示成功登錄,跳到首頁