Zend_validate isValid() 卡住 fatalError 最大执行时间超过 30 秒 /library/Zend/Validate/Hostname.php 第 608 行
我深受 Zend_validate 的困扰,每当我编写表单并尝试添加验证器时,如果我提交没有值的表单,唯一对我有用的东西,它会显示错误消息,但如果我提交好的值,它会卡住一段时间然后给出致命错误消息,说明 /Applications/MAMP/htdocs/MyApplicationFolderName/library/Zend/Validate/Hostname.php 在线超过了最大执行时间 30 秒608
请帮助我的控制器操作代码是
public function createAction()
{
// action body
$roleService=new User_Service_RoleService($this->em);
$userForm=new User_Form_UserForm($roleService->listAllRoleNames());
$userForm->startForm();
$userForm->setAction('create');
$userForm->setMethod('post');
if($this->getRequest()->isPost() )
{
if($userForm->isValid($this->getRequest()->getPost()))
{
$this->userAccountService->createUser($this->getRequest()->getParams());
$this->_forward('confirm');
}
}
$this->view->form=$userForm;
}
,我的表单类代码是
class User_Form_UserForm extends Zend_Form {
//put your code here
private $roles;
public function __construct($options = null) {
parent::__construct($options);
$this->roles=$options;
}
public function startForm()
{
$idForm=new Zend_Form_Element_Hidden('id');
$this->addElement($idForm);
///////////
$userEmailForm=new Zend_Form_Element_Text('email');
$userEmailForm->setRequired(TRUE);
$userEmailForm->setLabel('Email');
$emailValidator=new Zend_Validate_EmailAddress();
// $emailValidator->setOptions(array('domain' => FALSE));
$userEmailForm->addValidator($emailValidator,false);
$userEmailForm->setAttrib('size', 25);
$userEmailForm->setFilters(array(new Zend_Filter_StringToLower(),
new Zend_Filter_StringTrim())
);
$this->addElement($userEmailForm);
}
}
这是我表单的一小部分,它如此简单但不起作用我使用 MAMP PHP 5.3.5 因为 Doctrine2 和名称空间
请任何帮助将非常感激。
注意我还尝试了其他验证器,例如字符串长度,并且显示了相同的错误。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
来源:http://forum.mamp.info/viewtopic.php?f=2&t =12189
Source: http://forum.mamp.info/viewtopic.php?f=2&t=12189
我通过不使用 mamp 解决了这个问题,并开始使用 Zendserver CE 免费版 http: //www.zend.com/en/products/server-ce/downloads
,并完成此链接中描述的步骤 http://www.witheringtree.com/2011/07/installing-zend-server-ce-on-os-xa-guide-for-the-terminal-timid/
我可以将 zend 服务器的根文档编辑到 USERS/sites/
我运行 Zendframework 验证,效果很好,我喜欢 mamp,但我在 Zend 上开发,zend 使用 iconv_strlen() ,
解决此问题的另一种方法是安装 PHP,但我发现这不是一个简单的解决方案,或者您可以使用 macports 和我不想走那条路,因为我使用 zendframework 我需要与之相关的东西,所以我使用 zendServer 这是迄今为止最干净的解决方案。
I worked out the problem by not using mamp , and start using Zendserver CE free Edition http://www.zend.com/en/products/server-ce/downloads
, and by going through the steps described on this link http://www.witheringtree.com/2011/07/installing-zend-server-ce-on-os-x-a-guide-for-the-terminal-timid/
I could edit my root document for zend server to USERS/sites/
I run Zendframework validation and it worked nicely , I like mamp but I develope on Zend and zend use iconv_strlen() ,
the other way to solve this issue is by installing PHP but I found that not an easy solution , or you can use macports and I didnot want to go that way, since Iam using zendframework I needed something related to it so I used zendServer which is so far the cleanest solution .