数码资讯
解析如何在ZendFarmework创建一个表单
1。首先让我们把程序使Zend可以自动加载的方法,我们不需要手动加载。 复制代码代码如下所示: require_once'zend /装载机/自动装弹机。'/library/loader.php' / /负载自动加载 美元:装载机= zend_loader_autoloader:getInstanc
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
1。首先让我们把程序使Zend可以自动加载的方法,我们不需要手动加载。
复制代码代码如下所示:
require_once'zend /装载机/自动装弹机。'/library/loader.php' / /负载自动加载
美元:装载机= zend_loader_autoloader:getInstance(); / /自动实例化
为装载机-> registernamespace('application_ '); / /注册(只有默认的命名空间,并登记可以自动加载)
为装载机-> registernamespace(阵列('foo_ ','bar_ '));对于多个命名空间 / /注册方法
为装载机-> setfallbackautoloader(true); / /消费量的增加,不需要直接载入命名空间、类(不推荐)
然后请注意,如果包含了包含的目录,则要加载自己的目录。
复制代码代码如下所示:
set_include_path(崩溃(path_separator,阵列)(
realpath(application_path。 / /图书馆..),
realpath(application_path。' / /的形式),
get_include_path(),
));
这里包括了我们的目录,方便加载的程序。
2。确认表单目录
建立一个guestbook.phps应用/方式/
作为我们的表单类文件,如下所示:
复制代码代码如下所示:
< PHP
类application_form_guestbook延伸zend_form
{
公共函数init()
{
设置显示窗体/窗体的方法
美元-> setMethod('post '); / /组提交
电子邮件元素
美元-> addElement(中,'email',阵列( / /原型,名词的定义,和一些其他的信息
标签= >你的电子邮件地址:,
必需=真的,
过滤=阵列('stringtrim),
('validators= >阵列
电子邮件地址,
)
));
注释元素
美元-> addElement('textarea ','comment,阵列(
'标签' = ':'评论>>,
必需=真的,
('validators= >阵列
阵列('validator= 'stringlength '选项' =阵列(0, 20))
)
));
一个验证码 / /添加
美元-> addElement('captcha ','captcha,阵列(
标签= >请进入下面显示的5个字母,
必需=真的,
('captcha= >阵列
验证码= > 'figlet,
wordlen= > 5,
超时= 300
)
));
提交按钮添加
$this->addElement ('submit','submit', array (
忽略=真,
标签= >符号留言,
));
最后添加一些CSRF保护 / /
美元-> addElement('hash ','csrf,阵列(
忽略=真,
));
}
}
然后添加路由控制文件
应用 / / guestbookcontroller.php控制器
复制代码代码如下所示:
< PHP
类guestbookcontroller延伸zend_controller_action
{
剪断(indexAction) / /…
公共功能signaction()
{
要求美元=(美元-> GetRequest); / /去接收信息
/ / include_once(, / / /留言本应用形式。PHP);手动加载,只是不能自动加载,需要
美元=新形式application_form_guestbook; / /实例化方法
如果(美元-> GetRequest)(->后)(后){ / /如果转移的结果
如果(美元形式-> IsValid(($请求-> GETPOST))){ / /判断是否有效转移
评论=新application_model_guestbook美元(美元形式-> getValues());
制图者=新application_model_guestbookmapper(美元);
映射器>保存(注释);
返回_helper美元-> ->重定向('index);
}
}
这将被赋值为尝试窗体。
}
}
最后,添加一个简单的标志视图文件:
地址: / /脚本应用程序视图 / / sgin.php留言
复制代码代码如下所示:
请使用下面的表格来登录我们的留言簿!
< PHP
美元->表格-> setaction(美元-> URL());
回声$ >形式;
复制代码代码如下所示:
require_once'zend /装载机/自动装弹机。'/library/loader.php' / /负载自动加载
美元:装载机= zend_loader_autoloader:getInstance(); / /自动实例化
为装载机-> registernamespace('application_ '); / /注册(只有默认的命名空间,并登记可以自动加载)
为装载机-> registernamespace(阵列('foo_ ','bar_ '));对于多个命名空间 / /注册方法
为装载机-> setfallbackautoloader(true); / /消费量的增加,不需要直接载入命名空间、类(不推荐)
然后请注意,如果包含了包含的目录,则要加载自己的目录。
复制代码代码如下所示:
set_include_path(崩溃(path_separator,阵列)(
realpath(application_path。 / /图书馆..),
realpath(application_path。' / /的形式),
get_include_path(),
));
这里包括了我们的目录,方便加载的程序。
2。确认表单目录
建立一个guestbook.phps应用/方式/
作为我们的表单类文件,如下所示:
复制代码代码如下所示:
< PHP
类application_form_guestbook延伸zend_form
{
公共函数init()
{
设置显示窗体/窗体的方法
美元-> setMethod('post '); / /组提交
电子邮件元素
美元-> addElement(中,'email',阵列( / /原型,名词的定义,和一些其他的信息
标签= >你的电子邮件地址:,
必需=真的,
过滤=阵列('stringtrim),
('validators= >阵列
电子邮件地址,
)
));
注释元素
美元-> addElement('textarea ','comment,阵列(
'标签' = ':'评论>>,
必需=真的,
('validators= >阵列
阵列('validator= 'stringlength '选项' =阵列(0, 20))
)
));
一个验证码 / /添加
美元-> addElement('captcha ','captcha,阵列(
标签= >请进入下面显示的5个字母,
必需=真的,
('captcha= >阵列
验证码= > 'figlet,
wordlen= > 5,
超时= 300
)
));
提交按钮添加
$this->addElement ('submit','submit', array (
忽略=真,
标签= >符号留言,
));
最后添加一些CSRF保护 / /
美元-> addElement('hash ','csrf,阵列(
忽略=真,
));
}
}
然后添加路由控制文件
应用 / / guestbookcontroller.php控制器
复制代码代码如下所示:
< PHP
类guestbookcontroller延伸zend_controller_action
{
剪断(indexAction) / /…
公共功能signaction()
{
要求美元=(美元-> GetRequest); / /去接收信息
/ / include_once(, / / /留言本应用形式。PHP);手动加载,只是不能自动加载,需要
美元=新形式application_form_guestbook; / /实例化方法
如果(美元-> GetRequest)(->后)(后){ / /如果转移的结果
如果(美元形式-> IsValid(($请求-> GETPOST))){ / /判断是否有效转移
评论=新application_model_guestbook美元(美元形式-> getValues());
制图者=新application_model_guestbookmapper(美元);
映射器>保存(注释);
返回_helper美元-> ->重定向('index);
}
}
这将被赋值为尝试窗体。
}
}
最后,添加一个简单的标志视图文件:
地址: / /脚本应用程序视图 / / sgin.php留言
复制代码代码如下所示:
请使用下面的表格来登录我们的留言簿!
< PHP
美元->表格-> setaction(美元-> URL());
回声$ >形式;
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。