将HTML占位符添加到Zend_Form中 - php

我使用以下代码将Zend_Form用于申请表:

class Form_ApplicationForm extends Zend_Form
{
    public function init()
    {
        $this->setAction('/application/new')
             ->setMethod('post')
             ->setAttrib('id','application');

        $name = new Zend_Form_Element_Text('name');
        $name->setLabel('Your Name')
             ->setRequired(TRUE)
             ->addValidator('alpha', FALSE, array('allowWhiteSpace' => true));

        $email = new Zend_Form_Element_Text('email');
        $email->setLabel('Email Address')
              ->setRequired(TRUE)
              ->addValidator('EmailAddress');

        $this->addElements(array($name,$email));
    }
}

我正在向此表单添加一个Flash文件上传器(swfupload),该表单需要一个HTML代码段才能正常工作,该代码段如下所示:

<div id="swfupload-control">
    <p>Upload upto 5 image files(jpg, png, gif), each having maximum size of 1MB(Use Ctrl/Shift to select multiple files)</p>
    <input type="button" id="button" />
    <p id="queuestatus" ></p>
    <ol id="log"></ol>
</div>

插入此内容的最佳方法是什么,使其位于我要在我的控制器中插入的<form>内的某处,如下所示:

public function newAction()
{
    $form = new Form_ApplicationForm();
    if($this->_request->isPost()){
        $data = $_POST;
        if($form->isValid($data)){
            /// handle data here
        }else{
            $form->populate($data);
        }
    }
    $this->view->form = $form;
}

有没有一种方法可以在Zend_Form中添加占位符或类似内容,还是应该使用装饰器或类似方法来完成?

谢谢。

参考方案

您必须为此编写自己的元素,例如My_Form_Element_SwfUpload以及渲染器。请参阅以下教程:

The simplest Zend Form Decorator
How to layer Decorators
Rendering Zend Form Decorators individually
Creating composite elements

PHP Zend Controller插件被调用两次 - php

我注意到我的插件被调用了两次。我知道这个事实是因为在我的ViewSetup插件中它注册了标题,并且标题两次包含相同的内容。有任何想法吗? 参考方案 您最有可能将呼叫复制到preDispatch或postDispatch。对于尚未调度的每个请求,在Zend_Controller_Front::dispatch的循环内调用这些方法。这意味着将分派设置为false…

zend_navigation和模块 - php

目前,我正在使用zend开发应用程序,并将该应用程序分为模块。默认模块是未登录用户访问并可以自由浏览的主站点。登录时,根据用户类型,您将转到由简单ACL控制的模块A或模块B。如果您可以访问模块A,则不能访问模块B,反之亦然。两种用户类型都可以看到默认模块。现在,我想使用Zend_Navigation来管理所有模块中的整个应用程序导航。我不确定该怎么做,因为我…

php:将分钟取整到最近的四分之一小时,然后执行更多操作 - php

最初的问题是这样的:取分钟数->转换为四分之一小时-> 1个四分之一小时为1个单位->输出单位我今天整天都在整理页面,几分钟前我的大脑就停止工作了,我只是不知道如何输出单位数量。我知道在此网站上发布问题会有所帮助。因此,用户输入的分钟数(不是小时和分钟,而是数分钟),站点需要输出单位数量。单位是一个刻钟。分钟总是四舍五入到最近的四分之一小时…

php Singleton类实例将在多个会话中保留吗? - php

举一个简单的例子,如果我想计算一个不使用磁盘存储的脚本的命中次数,我可以使用静态类成员来执行此操作吗?用户1:<?php $test = Example::singleton(); $test->visits++; ?> 用户2:<?php $test = Example::singleton(); $test->visits+…

PHP OOP概念付诸实践 - php

目前,我所拥有的是一份以程序庄园形式编写的审查表。我想更改一些内容,并希望在此过程中,根据过去的经验,在OOP中,网站的整个审核部分会更好。数据流如下:HTML表单=>提交=> jQuery验证=>? => PHP验证=>添加记录我的问题是要了解将POST数据传递给类的正确方法是使用AJAX / jQuery或使用具有标准感谢页…