Zend Framework:发布到不同的操作,如果验证失败并保留表单字段,则返回到原始操作

2024-04-22

这听起来像是一个奇怪的场景,但我在一页上有两个表格。一个只是发回给自己。我在另一个动作中发布了第二篇文章,以保持代码简洁。也许不是正确的选择...

我现在遇到的问题是,如果第二个表单未验证,我将重定向回包含该表单的页面,但我不知道如何让表单字段填写用户输入的原始信息。有没有办法做到这一点并继续发布到两个单独的操作,或者我是否需要硬着头皮让两个表单都发布回同一个操作并处理混乱的逻辑?


我会将这两种表格提交给同一个操作。其实不应该有什么太乱的事情。每个表单中都包含一个隐藏字段来表示正在提交哪个表单。

申请表登录:

 /* other form elements */
 $this->addElement('hidden', 'login', array(
      'value' => 1
 ));

申请表注册:

 /* other form elements */
 $this->addElement('hidden', 'register', array(
      'value' => 1
 ));

控制器:

$loginForm = new Application_Form_Login();
$registerForm = new Application_Form_Register();

if($this->_request->isPost()) {
     if($this->_request->getPost('login')) {
         if($loginForm->isValid($this->_request->getPost())) {
             // validated, redirect
             $this->_helper->redirector('profile', 'user');
         }
     }
     if($this->_request->getPost('register')) {
         if($registerForm->isValid($this->_request->getPost())) {
             // validated, proceed as needed
         }
     }
}

$this->view->loginForm = $loginForm;
$this->view->registerForm = $registerForm;

View:

echo $this->loginForm;

echo $this->registerForm;

使用这种类型的设置,如果您的任何一个表单验证失败,isValid()将保留已输入的所有数据,并且您仍然可以在成功验证一个或两个表单后进行重定向。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Zend Framework:发布到不同的操作,如果验证失败并保留表单字段,则返回到原始操作 的相关文章

  • 如何编写返回 Validation 的函数?

    这是我之前的后续question https stackoverflow com questions 30527740 composing validating functions in scala 假设我有两个验证函数 如果输入有效则返回
  • RAILS 3 模型验证包含不起作用

    Schema Information Schema version Table name terms id integer not null primary key user id integer term type string 255
  • 载波扩展白名单不工作

    这是一个类似的案例 但没有解决方案CarrierWave extension white list 似乎不起作用 https stackoverflow com questions 11348510 carrierwave extensio
  • 使用java进行JSON模式验证[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在为返回 JSON 对象的 java webapp 编写一些验收测试 我想验证返回的 JSON 是否针对架构进行验证 任何人都可以建议
  • ASP.NET 的电子邮件地址验证

    使用什么来验证 ASP NET 表单上的电子邮件地址 我想确保它不包含 XSS 漏洞 这是 ASP NET 1 1 ASP NET Web 表单上发布的任何脚本标记都会导致您的网站抛出未处理的异常 您可以使用 asp 正则表达式验证器来确认
  • Doctrine2大合集

    在过去的几天里 我一直在玩doctrine2 ZF 设置 我仍然无法弄清楚的一件事是大型数组集合关联 例如 假设我们有一个名为 Post 的实体 每个帖子可以有很多评论 现在 如果我这样做 这将加载所有评论 post gt comments
  • PHP 中检查数字是否为浮点型

    这实在是太奇怪了 我有这段代码 rewardAmt amt if is float rewardAmt print r is float die else print r is not float die amt 的值为 0 01 但它正在
  • 值得学习的优秀 Zend Framework 示例应用程序 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 在 Cocoa 应用程序中验证用户输入的 URL 的最佳方法是什么?

    我正在尝试构建一个自制的网络浏览器 以更加熟练地使用 Cocoa 我需要一种好方法来验证用户是否输入了有效的 URL 我尝试过一些正则表达式 但 NSString 有一些有趣的怪癖 并且不喜欢我见过的大多数正则表达式使用的一些反引号 你可以
  • JS jQuery - 检查值是否在数组中

    我更喜欢 PHP 而不是 JS 我认为我的问题更多是语法问题 我有一个小的 jQuery 来 验证 并检查输入值 它适用于单个单词 但我需要数组 我正在使用inArray jQuery 的 var ar value1 value2 valu
  • PHP 中的 Javascript“unes​​cape”

    我的图像主机有一个 Google Chrome 扩展程序 它会向我的网站发送一个 URL 该网址得到encoded通过 JavaScript 的escape method 编码的 URLescape看起来像这样 http 253A 4 bp
  • 如何自定义 Zend_Form 正则表达式错误消息?

    我有以下代码 postcode form gt createElement text postcode postcode gt setLabel Post code postcode gt addValidator regex false
  • AJAX Rails 验证

    我的表单和验证可以很好地处理常规的 http 请求 我希望它使用 AJAX 我知道我可以在客户端进行验证 但这似乎是多余的 因为我已经在模型中定义了验证 当用户填写表单时 我想就他们的条目向他们提供反馈 在 AJAX 表单中使用 Rails
  • Laravel 验证:对 null 的成员函数调用失败()

    这段代码几天前还可以工作 但我似乎做了一些事情导致它崩溃 我有这条路线 Route post admin routemanagement AdminController addRoute 看起来像这样 public function add
  • 我想在后端验证来自 golang 前端的时区

    前端在注册期间发送时区以及其他用户详细信息 我需要在时区上放置一个验证器来进行 api 测试 时区数据的格式为 GMT 10 00 Hawaii GMT 08 00 Pacific Time US amp Canada 我所做的是定义数组中
  • Django GenericIPAddress 字段未验证输入

    你好 我有以下 Django 模型 class AccessPointIPAddress models Model Model for storing AccessPoint IP Addresses ap models ForeignKe
  • JSF:不同验证器标签的不同验证消息?

    在我的 JSF Primefaces 应用程序中 我正在使用 JSF 验证器标签来验证文本框的输入
  • 有没有办法调用 VBA(MS Access 2002 或 2003)中任何控件的 BeforeUpdate 事件过程?

    在 VBA 中 我正在更改 Access 表单中的一些控件的值 我喜欢在执行此操作后运行这些控件的 BeforeUpdate 事件 因为它会检查字段之间的一致性 Private Sub ExampleProc1 Dim intCancel
  • Zend 框架 PDF 问题

    又是我 伙计们 我有一个小问题 Create new PDF pdf new Zend Pdf Add new page to the document page pdf gt newPage Zend Pdf Page SIZE A4 p
  • 如果tinyMCE编辑器为空,如何通过在其旁边附加字符串来验证它?

    我需要验证一个表格 此表单有一些下拉菜单和tinyMCE编辑器 我通过在每个字段后附加字符串 Required 如果为空 来验证此表单 但是我无法验证tinyMCE编辑器 如果编辑器为空 我尝试了类似的操作 tinyMCE get tiny

随机推荐