ThinkPHP 表單自動驗證運用樣本,thinkphp樣本_PHP教程

來源:互聯網
上載者:User

ThinkPHP 表單自動驗證運用樣本,thinkphp樣本


使用TP 3.2架構

public function add_post(){//驗證規則$rule=array(array('name','require','請輸入姓名',1),//必須驗證name);$m=M('user');//擷取name,sex,contact資料到模型,並驗證if(!$m->field('name,sex,contact')->validate($rule)->create())$this->error($m->getError());$result=$m->add();if(!$result)$this->error('添加失敗');$this->success('添加成功',U('dir'));}

驗證規則也可以寫到模型裡,但我感覺有些麻煩,一是有時候不同頁面驗證的方式會不一樣,二是看到這個add_post事件裡的代碼,就清楚要接收什麼資料,如何驗證資料能夠在第一眼有個大致瞭解,所以總結出了此方式。


thinkphp的表單驗證不是ajax的?有比thinkphp的表單驗證工具更好用的?比如jquery form

ThinkPHP的後台架構,本身並沒有ajax。用jquery form提交就好,很方便。你可以看一下thinkphp官方的樣本
www.thinkphp.cn/extend/230.html
 

thinkphp自動驗證的問題

給你看我寫的一個例子:
//表單驗證
protected $_validate=array(
//array('驗證欄位','驗證規則','錯誤提示',驗證條件,附加規則,驗證時間)
array('uname','require','使用者名稱必須驗證!',1,'regex',3),
//array('username','','使用者名稱已經存在',1,'unique',1),
array('pwd','require','密碼必須填寫!'),

array('pwd','checkPwd','密碼長度不少於6位',1,'callback'),
);

function checkPwd(){
$password=$_POST['pwd'];
if(strlen($password)>=6){
return true;
}else {
return false;
}
}
//表單映射
protected $_map=array(
'uname'=>'username',
'pwd'=>'password',
);
//自動完成功能
protected $_auto=array(
//array(填充欄位,填充內容,填充條件,附加規則) 填充條件:1,插入 2,更新 3,所有的
array('reg_date','getDate',1,'callback'),
array('password','md5',3,'function'),
);
function getDate(){
return date('Y-m-d H:i:s');
}
 

http://www.bkjia.com/PHPjc/893423.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/893423.htmlTechArticleThinkPHP 表單自動驗證運用樣本,thinkphp樣本 使用TP 3.2架構 public function add_post(){//驗證規則$rule=array(array('name','require','請輸入姓名',1),//必須驗...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.