本文實例講述了PHP實現(xiàn)的用戶注冊表單驗證功能。分享給大家供大家參考,具體如下:
注冊界面

register.html
h1>用戶注冊/h1>
form method="post" action="register_verify.php">
input type="text" placeholder="用戶名" name="username">br>br>
input type="password" placeholder="密碼" name="password">br>br>
input type="password" placeholder="重復(fù)密碼" name="password2">br>br>
label>性別:
input type="radio" name="sex" value="男" checked="checked">男
input type="radio" name="sex" value="女">女/label>br>br>
input type="email" placeholder="郵箱" name="email">br>br>
button class="btn" type="submit">注冊/button>
/form>
register_verify.php
?php
require "mysql.php"; //導(dǎo)入mysql.php訪問數(shù)據(jù)庫
$username=$_POST['username'];
$password=$_POST['password'];
$password2=$_POST['password2'];
$sex=$_POST['sex'];
$email=$_POST['email'];
if(checkEmpty($username,$password,$password2,$sex,$email)){
if(checkpwd($password,$password2)){
if(checkEmail($email)){
if(insert($username,$password,$sex,$email))
echo"注冊成功";
}
}
}
//方法:判斷是否為空
function checkEmpty($username,$password,$password2,$sex,$email){
if($username==null||$password==null||$password2==null){
echo 'html>head>Script Language="JavaScript">alert("用戶名或密碼為空");/Script>/head>/html>' . "meta http-equiv=\"refresh\" content=\"0;url=register.html\">";
}
else{
if($sex==null){
echo 'html>head>Script Language="JavaScript">alert("性別為空");/Script>/head>/html>' . "meta http-equiv=\"refresh\" content=\"0;url=register.html\">";
}
elseif($email==null){
echo 'html>head>Script Language="JavaScript">alert("郵箱為空");/Script>/head>/html>' . "meta http-equiv=\"refresh\" content=\"0;url=register.html\">";
}
else{
return true;
}
}
}
//方法:檢查兩次密碼是否相同
function checkpwd($password,$password2){
if($password==$password2)
return true;
else
echo 'html>head>Script Language="JavaScript">alert("兩次密碼不一致");/Script>/head>/html>' . "meta http-equiv=\"refresh\" content=\"0;url=register.html\">";
}
//方法:郵箱格式驗證
function checkEmail($email){
$preg = '/^(\w{1,25})@(\w{1,16})(\.(\w{1,4})){1,3}$/';
if(preg_match($preg, $email)){
return true;
}else{
echo 'html>head>Script Language="JavaScript">alert("郵箱格式有誤");/Script>/head>/html>' . "meta http-equiv=\"refresh\" content=\"0;url=register.html\">";
}
}
//方法:將數(shù)據(jù)插入數(shù)據(jù)庫中
function insert($username,$password,$sex,$email){
$conn=new Mysql();
$sql="insert into user VALUE (null,'$username','$password','$sex','$email')";
$result=$conn->sql($sql);
if($result){
return true;
}
else{
echo 'html>head>Script Language="JavaScript">alert("寫入數(shù)據(jù)庫失敗");/Script>/head>/html>' . "meta http-equiv=\"refresh\" content=\"0;url=register.html\">";
}
$conn->close();
}
驗證碼和數(shù)據(jù)庫的實現(xiàn)方法前面寫過,這里不再贅述。
可參考前面兩篇文章:
PHP封裝mysqli基于面向?qū)ο蟮膍ysql數(shù)據(jù)庫操作類
PHP通過GD庫實現(xiàn)驗證碼功能
PS:這里再為大家提供2款非常方便的正則表達式工具供大家參考使用:
JavaScript正則表達式在線測試工具:
http://tools.jb51.net/regex/javascript
正則表達式在線生成工具:
http://tools.jb51.net/regex/create_reg
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php程序設(shè)計安全教程》、《php安全過濾技巧總結(jié)》、《PHP基本語法入門教程》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計有所幫助。
您可能感興趣的文章:- PHP登錄驗證功能示例【用戶名、密碼、驗證碼、數(shù)據(jù)庫、已登陸驗證、自動登錄和注銷登錄等】
- ubutu 16.04環(huán)境下,PHP與mysql數(shù)據(jù)庫,網(wǎng)頁登錄驗證實例講解
- php使用sql server驗證連接數(shù)據(jù)庫的方法
- php驗證用戶名是否以字母開頭與驗證密碼實例
- php用戶注冊頁面利用js進行表單驗證具體實例
- PHP+Ajax驗證碼驗證用戶登錄
- php面向?qū)ο蟮挠脩舻卿浬矸蒡炞C
- PHP用戶驗證和標簽推薦的簡單使用
- 通過緩存數(shù)據(jù)庫結(jié)果提高PHP性能的原理介紹
- PHP利用緩存處理用戶注冊時的郵箱驗證,成功后用戶數(shù)據(jù)存入數(shù)據(jù)庫操作示例