2011-06-09 57 views
0

我想爲用戶創建一個邀請表來註冊。但註冊表格只適用於有特殊邀請碼的人。那麼如何在Zend表單驗證中設置它,以檢查邀請代碼是否與用戶輸入的代碼相匹配。邀請代碼對於所有被邀請的人都是一樣的。需要關於zend表單驗證的幫助

這是我寫的代碼。

    $invitationElement = new Zend_Form_Element_Text('invitationCode'); 
        $invitationElement->setLabel('Invitation Code'); 
        $invitationElement->setRequired(true); 

在此先感謝

回答

3

如果你使用5.3,你可以使用回調驗證與封閉:

$valid = new Zend_Validate_Callback(function($value){ 
    // some validation 
    return true; 
}); 

,或者你可以使用正則表達式驗證

$validator = new Zend_Validate_Regex(array('pattern' => '/^Test/'); 

或相同的驗證:

$valid = new Zend_Validate_Identical('test'); 
+0

+1好的解決方案(刪除我自己的答案) – Phliplip 2011-06-09 07:44:30

+0

+1 for php 5.3 callback – tawfekov 2011-06-09 10:20:26

0

這麼多,你可以做到這一點的控制器(獲取POST數據,並檢查是否您的邀請碼是否一致 - 如果沒有,添加偏差T行吟詩人表單元素)或者你可以編寫自己的自定義驗證器。 This post可能會幫助您使用自定義驗證器編寫(或者只是谷歌獲得更多資源)。