Thinkphp架構 表單自動驗證登入註冊 ajax自動驗證登入註冊

來源:互聯網
上載者:User

標籤:php架構   color   欄位   mit   javascrip   class   ida   pos   size   

動態驗證:(不需要建Model模型)

1.建一個控制器,做表單操作(包含驗證)

<?phpnamespace Biaodan\Controller;use Think\Controller;class BiaodanController extends Controller{    public function test()    {        if(empty($_POST))//如果$_POST空,顯示添加頁面,        {            $this->show();            }        else    //如果$_POST不為空白,走驗證,驗證是否成功,添加資料庫            {            $y = D("yonghu");            $arr = array(//造一個驗證規則                array(‘uid‘,‘require‘,‘使用者名稱不可為空!‘,0),                array(‘pwd‘,‘pwd1‘,‘輸入的密碼不一致‘,0,‘confirm‘),//相等驗證:confirm(驗證表單中的兩個欄位是否相同,定義的驗證規則是一個欄位名),意思是pwd1必須為欄位                array(‘email‘,‘email‘,‘郵箱格式不正確‘,0),                array(‘name‘,‘/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/‘,‘社會安全號碼不正確‘,0,‘regex‘),//Regex,                array(‘age‘,‘18,50‘,‘年齡不在範圍內‘,0,‘between‘)//範圍驗證            );            if($y->validate($arr)->create())//$y->validate($arr),添加之前執行驗證規則            {                $y->add();                }            else            {                die($y->getError());                }        }    }    }

 

2.對應控制器方法的html頁面:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>無標題文檔</title></head><body><form action="__ACTION__" method="post"><br /><br /><br /><br />    <div>使用者名稱:<input type="text" name="uid" /></div><br />    <div>密碼:<input type="text" name="pwd" /></div><br />    <div>確認密碼:<input type="text" name="pwd1" /></div><br />    <div>姓名:<input type="text" name="name" /></div><br />    <div>郵箱:<input type="text" name="email" /></div><br />    <div>年齡:<input type="text" name="age" /></div><br />    <div><input type="submit" value="添加" /></div></form></body></html>    

 

ajax:(不需要建Model模型)

1.建一個控制器,做表單操作(包含驗證)

<?phpnamespace Admin\Controller;use Think\Controller;class ZhuCeController extends Controller {        public function add(){                $this->show();            }        public function addchuli(){        $y = D("yonghubiao");        $arr = array(        array(‘uid‘,‘require‘,‘使用者名稱不可為空!!‘),//ps: require 意思是欄位必須,就是不可為空        array(‘pwd‘,‘require‘,‘兩次密碼不一致!‘),        array(‘name‘,‘require‘,‘沒有填寫名稱!!‘),        array(‘email‘,‘email‘,‘郵箱格式不正確!!‘),        array(‘age‘,‘/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/‘,‘身份證不合法‘,0,‘regex‘),        );                if($y->validate($arr)->create()){            $y->add();            $this->ajaxReturn("註冊成功","eval");        }else{            $this->ajaxReturn($y->getError(),"eval");        }    }}

 

2.對應控制器方法的html頁面:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><script src="__PUBLIC__/js/jquery-1.11.2.min.js"></script><title>使用者註冊</title></head><body><br /><br /><br />    <div>使用者名稱:<input type="text" id="uid" /></div><br />       <div>&nbsp;密碼:<input type="text" id="pwd" /></div><br />    <div>&nbsp;名稱:<input type="text" id="name" /></div><br />    <div>&nbsp;郵箱:<input type="text" id="email" /></div><br />    <div>社會安全號碼:<input type="text" id="age" /></div><br />    <div><input type="button" id="dtn" value="提交" /></div></body><script type="text/javascript">    $("#dtn").click(function(){        var uid = $("#uid").val();        var pwd = $("#pwd").val();        var name = $("#name").val();        var email = $("#email").val();        var age = $("#age").val();                $.ajax({                url:"__CONTROLLER__/addchuli",                data:{uid:uid,pwd:pwd,name:name,email:email,age:age},                dataType:"TEXT",                type:"POST",                success: function(data){                                        alert(data);                }                    });    });</script></html>

 

Thinkphp架構 表單自動驗證登入註冊 ajax自動驗證登入註冊

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.