登入處理頁面
流程圖如下:
程式碼如下:
<?php session_start(); //登录处理界面 logincheck.php //判断是否按下提交按钮 if(isset($_POST["hidden"]) && $_POST["hidden"] == "hidden") { //将用户名和密码存入变量中,供后续使用 $user = trim($_POST["username"]);//trim()函数移除字符串两侧的空白字符 $psw = md5(trim($_POST["userpwd"]));//密码使用md5()加密一次,存入数据库 $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 { //确认用户名密码验证码不为空,则连接数据库 $conn = mysqli_connect("localhost","root","root");//数据库帐号密码为安装数据库时设置 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"]是否存在,不存在則提示提交未成功,返回登入介面,存在則繼續。
將傳過來的值取得到(利用trim()函數過濾空白字符,密碼使用md5()函數加密),然後判斷是否為空,為空則彈出提示,返回登入介面,不為空則繼續
判斷post方式傳遞過來的驗證碼值與先前存在session裡面的驗證碼值是否相等,不相等則提示驗證碼不正確,返回登入頁面,相等則繼續執行
連接資料庫、選擇我們建立的資料庫、設定字元集、透過使用者名稱和密碼查詢資料庫,判斷使用者名稱和密碼是否存在於資料庫,不存在則提示使用者名稱或密碼不正確,返回登入頁面,存在則提示成功登錄,跳到首頁