Php 收款表格控制员
我是symfony的初学者,我必须使用收集表单创建一个网站来预订演出的门票 界面很简单,用户选择他想要的票证数量,然后根据票证的需要显示尽可能多的表单原型(姓名和姓氏输入)。 这部分对我来说很好 我在mysql中有两个表“预订”和“票证”,我希望在提交表单后获得此渲染: 餐桌预订: 预订id=1 餐桌票: 票号id=“1”name=“thomas”,姓氏=“good”,预订\u id=“1” 票号id=“2”name=“laura”,姓氏=“senior”,预订Php 收款表格控制员,php,mysql,forms,symfony,Php,Mysql,Forms,Symfony,我是symfony的初学者,我必须使用收集表单创建一个网站来预订演出的门票 界面很简单,用户选择他想要的票证数量,然后根据票证的需要显示尽可能多的表单原型(姓名和姓氏输入)。 这部分对我来说很好 我在mysql中有两个表“预订”和“票证”,我希望在提交表单后获得此渲染: 餐桌预订: 预订id=1 餐桌票: 票号id=“1”name=“thomas”,姓氏=“good”,预订\u id=“1” 票号id=“2”name=“laura”,姓氏=“senior”,预订 但当我提交表单时,我的表中有+
但当我提交表单时,我的表中有+1个预订,但我的票证表中没有数据
类控制器扩展控制器
{
公共职能形成(请求$Request)
{
$em=$this->getDoctrine()->getManager();
$reservation=新预订();
$form=$this->createForm(新的ReservationsType(),$reservation,数组(
“操作”=>$this->generateUrl(“卢浮宫主页”),
'方法'=>'发布',
));
$form->handleRequest($request);
$em->persist($reservation);
$em->flush();
返回$this->render('LouvrePagesBundle:Pages:index.html.twig',数组(
'form'=>$form->createView(),
));
}
}
我在格式中看到两个问题:
没有对$em->flush()的调用代码>任意位置
您总是调用$em->persist($reservation)代码>无论表单验证状态如何
试着这样做:
if ($form->isSubmitted() && $form->isValid()) {
$em->persist($reservation);
$em->flush();
// now redirect, add flash message, etc.
}
请参见也可能需要在预订->票证:上设置cascade persist,或者票证应单独保留。ShiraNai我尝试了您的代码,但我发现这两个条件都不受尊重,当我删除IF条件时,它添加了预订,但没有我告诉过的机票数据before@ThomasGood确保操作
正确无误。是的,它是这样做的:卢浮宫页面主页:路径:/index默认值:{卢浮宫控制器:卢浮宫页面包:广告:表单}@ThomasGood您编写的这两个条件都不受尊重-因此$form->issubmitt()
和$form->isValid()
yieldfalse
?探查器和/或表单是否显示任何错误?