【问题标题】:Validating a Zend Framework form on client-side在客户端验证 Zend Framework 表单
【发布时间】:2011-12-08 13:52:15
【问题描述】:

我是 Zend 框架的新手,我忙于一个简单的 不需要框架的整个 MVC 结构的应用程序, 所以我设置了包含路径以查看 Zend 框架库。

到目前为止,我已经设法设置了一个简单的登录表单。但我正在努力 现在是我的表单中没有发生表单验证。我的代码如下所示:

    $form = new Zend_Form();
    $form->setView(new Zend_View())
->setAction('includes/login.php')
->setMethod('post')
->setAttrib('id', 'login');

$username = new Zend_Form_Element_Text('username');
$username->addValidator(new Zend_Validate_Alnum())
->setLabel('username')
->setRequired(true);

$password = new Zend_Form_Element_Password('password');
$password->addValidator('StringLength', false, array(5))
->setLabel('password')
->setRequired(true);

$login = new Zend_Form_Element_Submit('login');
$login->setLabel('login');

$form->addElement($username)
    ->addElement($password)
->addElement($login);

echo $form->render();

我不确定在这种情况下将如何使用验证类/方法,是否有人可能有我可以使用的指南和教程,或者可能为我指出正确的方向,因为我不确定我是否做了什么对吗?

ldevstarx

【问题讨论】:

  • “不进行表单验证”是什么意思?有没有错误?如果您想在客户端验证 - 这还不够。 Zend_Validate_* 类用于服务器端验证。

标签: php zend-framework zend-form


【解决方案1】:

您能否让您的问题更清楚一点,您是说您的验证在客户端或服务器端不起作用?

如果您试图让它在服务器端工作,您需要使用$form->isValid(my_post_Data) 来验证控制器上的表单。但是,如果您已经在执行此操作并且无法使其正常工作,那么您会遇到任何错误吗?

如果您已经知道如何在服务器端执行此操作,但希望它可以在客户端运行,那么仅让它在客户端验证是不够的。但是您可以使用简单的 ajax 请求轻松完成,而无需再次编写客户端验证。您可以咨询this。这非常简单,可以为您节省大量时间。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-25
    • 1970-01-01
    • 1970-01-01
    • 2012-12-05
    • 1970-01-01
    相关资源
    最近更新 更多