PHP 사용자 등록 로그인 시스템 로그인 처리 페이지
로그인 처리 페이지
흐름도는 다음과 같습니다.
코드는 다음과 같습니다.
<?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 메소드로 전달된 인증 코드 값이 이전에 세션에 존재했던 인증 코드 값과 동일한지 확인합니다. , 인증 코드가 올바르지 않다는 메시지가 표시되고 동일하면 계속 실행
데이터베이스에 연결하고, 생성한 데이터베이스를 선택하고, 문자 집합을 설정하고, 데이터베이스를 쿼리합니다. 사용자 이름과 비밀번호, 사용자 이름과 비밀번호가 데이터베이스에 존재하는지 확인합니다. 존재하지 않으면 사용자 이름이나 비밀번호가 올바르지 않다는 메시지를 표시합니다. 로그인 페이지로 돌아가고, 존재하는 경우 성공 메시지를 표시합니다. 로그인, 점프 홈페이지 바로가기