Zend Framework:Zend_Validate_Db_RecordExistsとZend_Validate_Db_NoRecordExistsを調べ、データベーステーブルの列をチェックして、フォームの値が名前付きの列に表示されるかどうかを確認できることを確認しました。
また、同じ行の別の列の値に基づいて行を除外できることも確認しました。
これらのバリデーターを使用して、パスワードがユーザー名と一致することを検証することは可能ですか?
これまでのところ、私のフォームでは、ユーザーが正しいユーザー名と正しいパスワードを入力した場合(ただし、必ずしもこのユーザー名のパスワードではありません!)、フォームは入力を検証します。明らかに、ログインフォームまたはユーザー名/トークンアクティベーションフォームの場合、トークンまたはパスワードは同じ行のユーザー名と一致する必要があります。
ありがとう。
$this->addElement('text', 'handle', array(
'label' => 'Username:',
'required' => true,
'filters' => array('StringTrim'),
'validators' => array(
array(
'NotEmpty', true, array('messages' => 'You must enter your username.')
),
array(
'Db_RecordExists',
false,
array (
'member_activation',
'member_username'
)
)
)
));
$this->addElement('text', 'validationCode', array(
'label' => 'Code:',
'required' => true,
'filters' => array('StringTrim'),
'validators' => array(
array(
'NotEmpty', true, array('messages' => 'You must enter your validation code.')
),
array(
'Db_RecordExists',
false,
array (
'member_activation',
'member_validationcode'
)
)
)
));