2013-01-03 35 views
0

我有一个控制器,它应该生成PDF文件,之后应该重定向到另一个站点。Symfony2的不重定向到一个新的页面PDF生成后TCPDF

class DocuController extends Controller 
{ 
    public function indexAction() { 
      // some other code 
      if ($request->get('_add_document')) 
      { 
       $form->bindRequest($request); 
       $em = $this->getDoctrine()->getEntityManager(); 
       $em->persist($document);  
       $em->flush(); 
       if ($session->get('journey_id')!=false) 
       { 
        $relation = new DocumentJourneyInJourney(); 
        $relation->setJourney($session->get('journey_id')); 
        $relation->setDocument($document->getId()); 
        $em->persist($relation); 
        $em->flush(); 
       } 
       $pdf=$this->generatePDF($form); 
       $pdf->Output('file.pdf', 'I'); 

       return $this->redirect($this->generateUrl('another_site')); 
      } 
    }   
    return $this->render('Bundle:Page:document.html.twig'); 
} 

public function generatePDF($form) 
{ 
    $pdf = $this->get("wrep.tcpdf")->create(); 
    $pdf->SetTitle('Tittle');   
    $pdf->SetHeaderData('', 0, ' ', ' ', array(0,0,0), array(0,0,0)); 
    $pdf->setHeaderFont(array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN)); 
    $pdf->SetPrintFooter(false); 
    $pdf->SetAutoPageBreak(TRUE);   
    $pdf->AddPage(); 
    $html = $this->renderView('Bundle:document.twig', 
        array(
        'traveller' => $form["name"]->getData().' '.$form["surname"]->getData(), 
        'document' => $form["full_name"]->getData() 
        ) 
       ); 
    $pdf->writeHTML($html, $ln=false, $fill=false, $reseth=false, $cell=false, $align=''); 
    return $pdf; 
} 
} 

但有了这个代码生成PDF格式和浏览器下载,但该页面不重定向。

回答

1

这是不可能的。你只能尝试使用JavaScript来做到这一点。创建一个iframe加载那里的pdf下载url并在用JavaScript调用带有pdf的iframe之后重定向用户。 (我不知道它是否真的有效)另一个问题是为什么你需要重定向用户?

+0

在这个控制器的网站是形式和按钮'生成PDF',所以我想生成PDF文件,让用户下载该文件,然后将他重定向到例如主页。 – paciks

+0

将用户重定向到主页。在主页添加JavaScript将用户重定向到pdf。在用户仍然在主页上时,PDF下载开始。 – fkrauthan

0

这是正常的。您在下载文件时发送了您的回复。这也是发送重定向响应。

+0

感谢您的回复,您能告诉我如何解决我的问题吗?我的意思是,你认为在pdf下载后如何完成重定向? – paciks

+0

我没有任何建议,因为你不能从pdf重定向,你能吗?为什么不留在你所在的页面上? – greg0ire

+0

我认为会有一些解决方案,但我看到没有其他选择。感谢帮助。 – paciks

相关问题