PHP验证注册信息

注册页面reg.html

<form action="reg.php" method="post">
用户名<input type="text" name="username"><br>
密码:<input type="text" name="password"><br>
确认:<input type="text" name="repwd"><br>
qq:<input type="text" name="qq"><br>
<input type="submit" value="提交">
</form>

验证登录页面reg.php

<?php
include("func.php");
if(isset($_POST["username"]) && isset($_POST["password"]) && isset($_POST["repwd"]) && isset($_POST["qq"])){
    $username=addslashes(trim(stripslashes($_POST["username"])));
    $password=addslashes(trim(stripslashes($_POST["password"])));
    $repwd=addslashes(trim(stripslashes($_POST["repwd"])));
    $qq=addslashes(trim(stripslashes($_POST["qq"])));
    RegisterValidator::validate($username,$password,$repwd,$qq);
}
?>

功能页面func.php

<?php
final class RegisterValidator{
//本文件进行验证
    public static function validate($username,$password,$repwd,$qq){
        if(!$username){
            echo "<script>alert('用户名不能为空');history.go(-1)</script>";
        }
        elseif(strlen($username)<3){
            echo "<script>alert('用户长度小于3');history.go(-1)</script>";
        }
        /*
        elseif(strlen($username)>30){
            echo "</script>alert('用户长度大于30');history.go(-1)</script>";
        }
        */
        elseif(!preg_match('/^[A-Za-z]+$/',substr($username,0,1))){
            echo "<script>alert('用户必须以字母开头');history.go(-1)</script>";
        }
        elseif(!preg_match('/^[A-Za-z0-9_]+$/',substr($username,0,1))){
            echo "<script>alert('用户只能是字母数字下划线组合');history.go(-1)</script>";
        }
        elseif(!$password){
            echo "<script>alert('密码不能为空');history.go(-1)</script>";
        }
        elseif(!preg_match('/^[A-Za-z0-9!@#\$%\^&\*_]+$/',$password)){
            echo "<script>alert('密码只能是数字、字母或!@#$%^&*_等字符的组合');history.go(-1)</script>";
        }
        elseif($password!=trim($repwd)){
            echo "<script>alert('两次密码不一致');history.go(-1)</script>";
        }
        elseif(!preg_match('/^[0-9]+$/',$qq)){
            echo "<script>alert('qq格式不对');history.go(-1)</script>";
        }
    }
}
?>
原文地址:https://www.cnblogs.com/BloodZero/p/4402181.html