首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用Zend中的单个表单将数据插入两个表中

问题:使用 Zend 中的单个表单将数据插入两个表中。

答案

在 Zend 框架中,您可以使用单个表单将数据插入两个不同的表中。首先,需要确保您的表单具有两个不同的控制器(例如 firstControllersecondController)。然后,在相应的控制器中创建两个不同的视图(例如 firstViewsecondView),这些视图将负责处理各自的数据。

接下来,您需要创建一个用于将数据从第一个表单提交到第二个表单的中介视图。这可以通过在 application.config.php 文件中添加一个名为 intermediate_view 的路由实现。

代码语言:php
复制
return [
    // ...
    'router' => [
        'routes' => [
            'intermediate_view' => [
                'type' => 'Zend\Mvc\Router\Http\Segment',
                'options' => [
                    'route' => '/intermediate_view',
                    'defaults' => [
                        'controller' => 'Zend\Mvc\Controller\AbstractActionController',
                        'action' => 'intermediate_view',
                    ],
                ],
            ],
        ],
    ],
    // ...
];

然后,在中介视图中,您可以使用 $request 变量来获取来自第一个表单的提交数据,并将其作为参数传递给第二个表单的 add 方法。

在第二个表单的 add 方法中,您可以使用 $request 变量来获取来自中介视图的数据,并将其存储到数据库中。

代码语言:php
复制
// firstController
public function intermediateViewAction()
{
    $firstForm = new FirstForm();
    $secondForm = new SecondForm();

    if ($this->getRequest()->isPost()) {
        $firstData = $this->getRequest()->getPost('first_form');
        $secondData = $this->getRequest()->getPost('second_form');

        $secondForm->add($secondData);
    }

    return $this->render('first/intermediate_view.phtml', [
        'firstForm' => $firstForm,
        'secondForm' => $secondForm,
    ]);
}

在上面的示例中,我们首先创建了两个表单,然后通过中介视图将第一个表单的数据提交到第二个表单。在第二个表单的 add 方法中,我们使用 $request 变量来获取来自中介视图的数据,并将其存储到数据库中。

最后,在 application.config.php 文件中添加以下路由,以便可以通过 URL 直接访问中介视图。

代码语言:php
复制
'router' => [
    'routes' => [
        'first' => [
            'type' => 'Zend\Mvc\Router\Http\Segment',
            'options' => [
                'route' => '/first',
                'defaults' => [
                    'controller' => 'First\Controller\First',
                    'action' => 'index',
                ],
            ],
        ],
        'second' => [
            'type' => 'Zend\Mvc\Router\Http\Segment',
            'options' => [
                'route' => '/second',
                'defaults' => [
                    'controller' => 'Second\Controller\Second',
                    'action' => 'index',
                ],
            ],
        ],
    ],
],

现在,您可以通过 URL /first/intermediate_view 访问中介视图,将数据从第一个表单提交到第二个表单。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

oracle insert 一张数据插入另外表

大家好,又见面了,我是你们朋友全栈君。...一张数据插入两外张B数据插入A, B有多少符合条件数据A就插入多少条数据 如表B符合条件有10条数据A也会添加10条数据 case 1 两张结构完全一样 insert...into tableA select * from tableB case 2, 两张结构不一样,只获取B符合条件一些列数据 insert into tableA (name,age)...select b.studentname, b.age from tableB b where b.id>30 case 3, 两种结构不一样,需要获取B符合条件一些列数据,还要某些列特定数据...如需要在A列添加老师,学校,值是 ‘陈大文’,‘光明中学’,而B没有老师,学校列,那么可以以固定值出现在B输出 insert into tableA (name,age,teacher,school

2.1K10

MySQL如何select子查询结果横向拼接后插入数据

我有数据audit结构如下: +-----------+------------+------+-----+-------------------+-------+ | Field | Type...如何查询结果合并成一条记录插入到上面的数据呢?网上也没有确切答案,摸索了很久,最后,终于在百般尝试下使用join进行横向拼接完成了我想要功能!...----------+--------+--------+----------+---------+---------+---------------------+ 拓展一下,如果我现在想让audit...自己又摸索了一下,参考如下sql,在一条语句中完成,当然你也可以再插入后对数据进行update。...flt)tmpFlt,(select 6 as audit)tmpAudit)tmp5 join (select 1)tmp6; 上面的语句和前面基本相同,只是增加了对tmpFlt和tmpAudit这两个子查询重复查询

7.8K20
  • 使用 Django 显示数据

    1、问题背景当我们使用 Django 进行 Web 开发时,经常需要在 Web 页面上显示数据数据。例如,我们可能需要在一个页面上显示所有用户信息,或者在一个页面上显示所有文章标题和作者。...那么,如何使用 Django 来显示数据呢?2、解决方案为了使用 Django 显示数据,我们需要完成以下几个步骤:在 models.py 文件定义数据模型。...数据模型是 Django 用于表示数据数据类。...例如,如果我们想显示所有用户信息,那么我们可以在 models.py 文件定义如下数据模型:from django.db import modelsclass User(models.Model):...URL 路由是 Django 用于 URL 映射到视图函数配置。

    11410

    Struts2(二)---页面表单数据提交给Action

    struts2表单想Action传递参数方式有两种,并且这两种传参方式都是struts2默认实现,他们分别是基本属性注入、域模型注入、其中 ---基本属性注入,是表单数据项分别传入给Action...---域模型注入,是表单数据项打包传入给Action一个实体对象。 我们继续使用项目Struts2hello Struts实例,在其基础上使用这2方式完成页面向Action参数传递。...具体我们可以在项目首页index.jsp上追加表单,并在表单模拟一些数据这些数据提交给HelloAction,最后在HelloAction中将接受参数输出到控制台。...2>域模型注入 步骤一:修改表单,追加演示数据 在index.jsp修改表单,追加用户名、密码两个文本框,模拟输入用户相关信息,代码如下: <%@ page language="java" import...在entity包下创建实体类User,用于封装表单追加数据,即用户名、密码。

    62810

    【已解决】如果MySQL数据生成PDM

    | 分类:经验分享 有时候,我们需要MySQL数据生成对应...PDM文件,这里凯哥就讲讲第一种MySQL数据生成对应PDM文件。...环境准备: MySQL数据库连接客户端(可以使用sqlyong或者是navicat等这类客户都工具类) PowerDesigner。这里凯哥使用是PowerDesigner来生成PDM。...注:本文是以PowerDesigner为案例来讲解。如果您使用是其他工具,请自行查询。 操作步骤: ①:打开MySQL客户端,连接到需要生成PDM数据库,并将导出成sql文件。...如果需要添加结构之间关系,需要自己在PowerDesigner手动去添加关联关系。 文章涉及到软件如下图:

    42300

    如何使用免费控件Word表格数据导入到Excel

    我通常使用MS Excel来存储和处理大量数据,但有时候经常会碰到一个问题—我需要数据存储在word表格,而不是在Excel,这样处理起来非常麻烦,尤其是在数据比较庞大时候, 这时我迫切地需要将...相信大家也碰到过同样问题,下面我就给大家分享一下在C#如何使用免费控件来实现这一功能。这里,我使用两个免费API, DocX和Spire.Xls。 有需要朋友可以下载使用。...以下是详细步骤: 首先我使用DocX API 来获取word表格数据,然后数据导入System.Data.DataTable对象。...Spire.Xls API来创建一个Workbook对象,并将dataTable插入到Workbook,然后文件保存为.xlsx文件。...数据导入到worksheet; //dataTable数据插入到worksheet,1代第一行和第一列 sheet.InsertDataTable(dt, true, 1, 1); 步骤

    4.4K10

    eos源码赏析(十九):EOS智能合约之合约数据RAM使用

    本文主要包含有以下内容 智能合约ram使用 eoslambda表达式使用 1、智能合约ram使用 我们在以前文章多次提到,通过多索引模式数据写入到数据,其中有包括有增、删、改、查...在本次版本更新之前,合约开发者是可以指定本次action数据写入到table是由合约账户本身还是action发起者即用户来支付ram。...为什么要这样做呢,和以前狼人游戏权限问题一样,试想如果一个合约开发者获取到用户账户中有多少ram,而后恶意更新合约代码,大量使用用户ram来创建或者往添加内容,这将是个可怕现象。...以eos使用为例,仍旧是数据增删改查,这次我们以数据更新为例: void apply_context::db_update_i64( int iterator, account_name payer...lambda表达式,我们对应看[&]表示引用方式捕获,对应参数列表,在大括号里面实现了函数功能,相当于向db.modify传入一个函数,通过这个函数来修改数据内存占用大小,并确定由谁来支付这个内存消耗

    67320

    yhd-VBA从一个工作簿某工作查找符合条件数据插入到另一个工作簿某工作

    今天把学习源文件共享了出来,供大家学习使用 上次想到要学习这个 结合网友也提出意见,做一个,如果有用,请下载或复制代码使用 【问题】我们在工作中有时要在某个文件(工作簿)查找一些数据,提取出来...常用方法是打开文件,来查找,再复制保存起来。如果数据少还是手工可以,如果数据多了可能就。。。。 所以才有这个想法。...想要做好了以后同样工作就方便了 【想法】 在一个程序主控文件 设定:数据源文件(要在那里查找工作簿) 设定:目标文件(要保存起来那个文件) 输入你要查找数据:如:含有:杨过,郭靖数据。...要复制整行出来 主控文件设定如图 数据源文件有两个工作 查找到"郭靖"数据保存到目标文件【射雕英雄传】工作 查找到"杨过"数据保存到目标文件【第一个】工作 【代码】 Sub...从一个工作簿某工作查找符合条件数据插入到另一个工作簿某工作() Dim outFile As String, inFile As String Dim outWb As

    5.3K22

    .NET Core使用NPOIExcel数据批量导入到MySQL

    前言:   在之前几篇博客写过.NET Core使用NPOI导出Word和Excel文章,今天把同样我们日常开发中比较常用使用Excel导入数据到MySQL数据文章给安排上。...二、ASP.NET Core使用EF Core连接MySQL执行简单CRUD操作:   因为该篇文章会涉及到MySQL数据操作,所以前提我们需要有一点CRUD基础。...Can-daydayup/p/12593599.html 三、使用NPOI获取Excel数据注意点: 1、关于Excel版本问题: 做过Excel相关工作的人应该都清楚Office Excel格式有两种...: 注意,咱们填写在Excel单元格数据可能为多种不同数据类型,因此我们需要对单元格数据类型做判断然后在获取,否则程序会报异常。...: https://www.cnblogs.com/Can-daydayup/p/11588531.html .NET Core使用NPOIExcel数据批量导入到MySQL: https

    4.7K20

    登录注册小案例实现(使用Djangoform表单来进行用户输入数据校验)

    ,这个表单可以用来验证数据合法性还可以用来生成HTML代码 所以这个登录注册案例我们就来使用这个django自带form来生成前端页面以及验证数据. ②关于django form表单使用: 创建一个...使用is_valid()方法可以验证用户提交数据是否合法,而且HTML表单元素name必须和django表单name保持一致,否则匹配不到....(比如此例request.POST获取HTML表单元素name属性值与form表单name是一样:username,password) is_bound属性:用来表示form是否绑定了数据,...(2)在本案例实战使用这个form表单: 在此名为mucisapp下创建forms.py文件,编写表单校验(用户登录和注册数据校验): from django import forms from...""" # def clean(self): # 前端表单用户输入数据经过上面过滤后再结合后台数据库所有数据进行分析 # # 校验数据是否有该用户 #

    4.4K00
    领券