등록 확인
사용자가 입력한 사용자 이름과 비밀번호가 비어 있거나 두 번 입력한 비밀번호가 일치하지 않는 경우 사용자는 로그인 페이지로 돌아갑니다(여기서 비밀번호 길이 확인과 같은 다른 확인을 직접 추가할 수도 있습니다). 확인 조건이 충족되면 데이터베이스 연결이 올바르게 된 것입니다. 쿼리 데이터베이스 사용자 이름이 이미 존재하는 경우 "사용자가 이미 있습니다!"를 인쇄하고, 삽입에 실패하면 "등록"을 인쇄합니다. 실패! 로그인 페이지로 돌아가기"; 삽입에 성공하면 "등록 성공! 로그인 페이지로 돌아가기"를 인쇄합니다.
코드는 다음과 같습니다:
add.php
<?php /** * Created by PhpStorm. * User: Administrator * Date: 2018/2/27 0027 * Time: 上午 11:06 */ header('Content-type:text/html;charset=utf-8'); if ($_SERVER['REQUEST_METHOD'] == 'POST') { if (empty($_POST['username'])){ echo "<script>alert('用户名不能为空!');location.href='login.html';</script>"; }else { $username = trim($_POST['username']); } if (empty($_POST['password'])){ echo "<script>alert('密码不能为空!');location.href='login.html';</script>"; }else{ $password = $_POST['password']; } if (empty($_POST['repassword'])){ echo "<script>alert('确认密码不能为空!');location.href='login.html';</script>"; }else{ $repassword = $_POST['repassword']; } if ($password != $repassword) { echo "<script>alert('两次输入密码不一致!');location.href='login.html';</script>"; } } $mysqli = new mysqli('localhost', 'root', 'root', 'student'); $result = $mysqli->query("SELECT password FROM user WHERE username = "."'$username'"); $rs=$result->fetch_row(); if(!empty($rs)){ echo "<script>alert('用户已存在!');location.href='login.html';</script>"; }else { $mysqli = new mysqli('localhost', 'root', 'root', 'student'); $sql = "INSERT INTO user (username,password) VALUES ('$_POST[username]', '$_POST[password]')"; $rs = $mysqli->query($sql); if (!$rs) { echo "<script>alert('注册失败!');location.href='login.html';</script>"; } else { echo "<script>alert('注册成功!返回登录页面');location.href='login.html';</script>"; } }