注册页面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>";
}
}
}
?>

PHP验证注册信息的更多相关文章

  1. HTML注册页面验证注册信息

    在这里主要介绍两种验证方式,一种是点击注册按钮后会提示最上方的出错位置,弹出窗口提示格式不对.另一种是利用鼠标事件,在鼠标进行不同操作时会有不同的click事件. 这两种都是利用javascript, ...

  2. JavaScript验证注册信息

    <script language="javascript"> function check_login(form){ if(form.username.value==& ...

  3. 通过邮箱验证注册——.net代码

    在写一些面向用户的网站类的程序时,必不可少的一个就是注册,通常情况下,我们会选择邮箱验证后注册,或者手机发送验证码注册.上篇文章中已经简单的描述了手机验证注册,这篇主要介绍一下邮箱验证. 邮箱验证的步 ...

  4. 第一百八十四节,jQuery-UI,验证注册表单

    jQuery-UI,验证注册表单 html <form id="reg" action="123.html" title="会员注册" ...

  5. JAVA代码验证身份证信息

    java验证身份证信息代码 转自:http://www.blogjava.net/xylz/archive/2011/01/05/342330.html import java.util.Calend ...

  6. markdownpad2 pro注册信息升级 破解版

    注册信息邮箱地址: Soar360@live.com 授权秘钥: GBPduHjWfJU1mZqcPM3BikjYKF6xKhlKIys3i1MU2eJHqWGImDHzWdD6xhMNLGVpbP2 ...

  7. linux下查询域名或IP注册信息的操作记录(whois)

    在运维工作中,有时需要查询某些域名的注册信息(域名的NS,注册用户,注册邮箱等),可以使用whois这个命令.whois命令令用来查找并显示指定帐号(或域名)的用户相关信息,因为它是到Network ...

  8. CAS认证(3):验证用户信息

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...

  9. win7(32 bit) + IE8 环境,IE8无法弹窗(错误提示:“此网页上的错误可能会使它无法正确运行”),有关的系统注册信息损坏——解决方法

    错误截图如下:   IE有关的系统注册信息损坏,导致IE无法正常弹窗.   解决办法:重新注册与IE有关的DLL文件,具体如下: 1.以管理员身份运行附件脚本(新建txt文件,将下面代码复制到txt文 ...

随机推荐

  1. Install .Net Core For CentOS

    Install .NET Core SDK Before you start, please remove any previous versions of .NET Core from your s ...

  2. Idea(二) 解决IDEA卡顿问题及相关基本配置

    一.IDEA太卡顿,设置使用IDEA的内存 在IDEA的安装目录下的bin目录下: 打开设置: 将idea.exe.vmoptions文件内由-server-Xms128m-Xmx512m-XX:Ma ...

  3. GraphQL & REST API

    GraphQL & REST API GraphQL https://mp.weixin.qq.com/s/X-jm7jLXWmMmLBVgHfkRiQ https://webapplog.c ...

  4. BZOJ3277 串(后缀数组+二分答案+主席树)

    因为不会SAM,考虑SA.将所有串连起来并加分隔符,每次考虑计算以某个位置开始的子串有多少个合法. 对此首先二分答案,找到名次数组上的一个区间,那么只需要统计有多少个所给串在该区间内出现就可以了.这是 ...

  5. MySQL 大表备份、改表

    0.背景: 需要对一个千万行数据的表新增字段,具体操作: a.dump 数据 b.delete 数据 c.alter 表 MySQL  版本为5.5,alter表时MySQL会锁表:表行数虽多,当数据 ...

  6. 学习Spring Boot:(二)启动原理

    前言 主要了解前面的程序入口 @@SpringBootApplication 这个注解的结构. 正文 参考<SpringBoot揭秘 快速构建微服务体系>第三章的学习,总结下. Sprin ...

  7. 【Learning】插头DP

    简介 插头DP(轮廓线DP)是用来解决网格图回路问题的一种算法. 插头DP解决的经典问题就是统计经过所有格子的哈密顿回路条数,某些格子有障碍. ​ 如果问题稍微进阶一点的话,不一定要求路径是回路.路径 ...

  8. JS的对象原型

    1.对象 1.1 语法 对象可以通过两种形式定义:声明(文字)形式和构造形式. 对象的文字语法: var myObj = { key : value //... }; 对象的构造语法: var myO ...

  9. 利用Array Prototype的方法来实现对dom集合的筛选、indexOf、map等功能

    <!DOCTYPE html><html> <head> <title>TODO supply a title</title> <me ...

  10. 来自Redis 作者的看法 —— Twemproxy

    虽然大量用户使用Redis节点的大型农场,但从项目本身来看,Redis主要是单实例业务. 我有很大的计划与项目一起分发,在某种程度上我不再评估Redis的任何线程版本:对我来说,从Redis的角度看, ...