當前位置:才華齋>計算機>php語言>

ThinkPHP表單自動提交驗證例項教程

php語言 閱讀(2.44W)

HRef="https://caihuazhai.com/tags-pd92-0.html" target="_blank" >文章主要介紹了ThinkPHP表單自動提交驗證例項教程,非常有實用價值,需要的朋友可以參考下。

ThinkPHP表單自動提交驗證例項教程

本文以例項講述了ThinkPHP表單自動提交驗證的實現過程,詳細步驟如下所示:

  一、模板部分:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>

<HEAD>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<TITLE>ThinkPHP示例:表單提交、自動驗證和自動填充</TITLE>

</HEAD>

<BODY>

<p class="main">

<FORM METHOD=POST ACTION="__URL__/insert">

<TABLE cellpadding=2 cellspacing=2>

<TR>

<TD width="12%">標題:</TD>

<TD ><INPUT TYPE="text" NAME="title" style="height:23px" class="large bLeft"></TD>

</TR>

<TR>

<TD >郵箱:</TD>

<TD ><INPUT TYPE="text" NAME="email" style="height:23px" class="large bLeft"></TD>

</TR>

<TR>

<TD>內容:</TD>

<TD><TEXTAREA NAME="content" class="large bLeft" ROWS="8" COLS="25"></TEXTAREA></TD>

</TR>

<TR>

<TD>驗證碼:</TD>

<TD><INPUT TYPE="text" NAME="verify" style="height:23px" class="small" > <img src="__URL__/verify" align="absmiddle" /> 輸入對應的數字</TD>

</TR>

<TR>

<TD></TD>

<TD><INPUT TYPE="submit" class="button" value="提 交"> <INPUT TYPE="reset" class="button" value="清 空"></TD>

</TR>

<TR>

<TD></TD>

<TD ><HR></TD>

</TR>

<volist name="list" id="vo">

<TR>

<TD></TD>

<TD style="border-bottom:1px dotted silver">{$e} <span style="color:gray">[{$l} {$te_time|date='Y-m-d H:i:s',###}]</span></TD>

</TR>

<TR >

<TD></TD>

<TD ><p class="content">{$ent|nl2br}</p></TD>

</TR>

</volist>

</TABLE>

</FORM>

</p>

</BODY>

</HTML>

  二、模型部分form類程式程式碼:

<?php

class FormModel extends Model {

// 自動驗證設定

protected $_validate = array(//這裡必須定義為$_validata用來驗證

array('title','require','標題必須!',1),

array('email','email','郵箱格式錯誤!',2),

array('content','require','內容必須'),

array('verify','require','驗證碼必須!'),

array('verify','CheckVerify','驗證碼錯誤',0,'callback'),//callback 使用方法驗證,前面定義的驗證規則是一個當前 Model 類的方法

//這裡如果有不太理解的話可以看本類的最後一個方法

array('title','','標題已經存在',0,'unique','add'),//附加驗證unique,unique 驗證是否唯一,系統會根據欄位目前的值查詢資料庫來判斷是否存在相同的.值

);

/*think的驗證機制,省去了不少麻煩非空:equire 郵箱:email 驗證碼正確:CheckVerify

array()陣列內容array(驗證欄位,驗證規則,錯誤提示,驗證條件,附加規則,驗證時間)

驗證條件

EXISTS_TO_VAILIDATE 或者 0 存在欄位就驗證 (預設)

MUST_TO_VALIDATE 或者1 必須驗證

VALUE_TO_VAILIDATE 或者 2 值不為空的時候驗證