【问题标题】:Redirect after output completed and file saved (not sure how to know when large PDF's fully saved)输出完成并保存文件后重定向(不确定如何知道大 PDF 何时完全保存)
【发布时间】:2013-05-18 12:56:52
【问题描述】:

我使用 PDF 生成 PDF,然后将其保存到服务器,如下所示:

$fp = fopen( '$createdId.'.pdf', 'wb' ); fwrite( $fp, $pdf->Output('example_009.pdf', 'S')); fclose( $fp );

用户将在我们的网站上设计一些东西,然后转到调用上述代码的 php 页面,然后我希望他们重定向到购物车以便他们结帐。

使用

jQuery(document).ready(function() {redirect() })

在重定向之前似乎没有等待 PDF 完全完成。我尝试将大图像嵌入到 pdf 中进行测试...我还尝试直接离开页面,以确保在离开页面后输出和保存实际上并没有发生在幕后。

在 PDF 完全创建并保存到服务器之前,我应该如何确保页面不会被重定向?

谢谢,

我在下面所做的概述 - 例如构建 pdf obj,输出 pdf obj 然后希望在 pdf 完成后重定向页面

// 初始化 PDF OBJ $pdf2 = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);

// 设置默认值 setPDFDefaults($pdf2,$pl,$resolution);

// 添加背景 addBackground($pdf2,$templated,$bannerInfo['backgroundColour'],$marginTop,$bleedTop,$bleedBottom,$bleedLeft,$bleedRight, $bannerWidth, $bannerHeight,$this);

// 循环遍历图像和文本对象并添加到 PDF OBJ drawObjects($pdf2,$json,$images,$sizeRatio,$countBG,$marginTop,$bleedTop,$margLeft,$this,$debugga);

 $fp = fopen( '/homepages/40/d449000017/htdocs/BannerPlanetMagento/js/bannercreator/savedBanners/'.$nSize.'/customer/banner'.$createdId.'.pdf', 'wb' ); 
 fwrite( $fp, $pdf->Output('example_009.pdf', 'S')); 
 fclose( $fp );

 $fpCustomer = fopen( '/homepages/40/d449000017/htdocs/BannerPlanetMagento/js/bannercreator/savedBanners/'.$nSize.'/print/banner'.$createdId.'_print.pdf', 'wb' ); 
 fwrite( $fpCustomer, $pdf2->Output('example_009.pdf', 'S')); 
 fclose( $fpCustomer );

var target = document.getElementById('loading-spinner'); var spinner = new Spinner(opts).spin(target);

jQuery(document).ready(function($) {

// performRedirectAction()

});

【问题讨论】:

  • 请向我们展示您的页面代码(缩小到相关行)。
  • 你好,只是添加了一个概述,但它不需要复杂,即使它只是启动TCPDF PDF对象,添加图像,然后'输出'我的问题也是一样的保存到服务器。然后想知道在输出和文件保存完成后我什么时候可以重定向页面。谢谢!
  • 为什么不用 header() 重定向?

标签: tcpdf


【解决方案1】:

好吧,我遇到了类似的问题,我通过这种方式解决了我发出生成 pdf 的调用打开一个新选项卡。 并且一旦调用它就不能被重用,这会阻止你的代码被无数次使用。 但是除了使用类似于我的解决方案之外,您想要什么或以exit()结尾或别无选择。 没人知道怎么解决,我没解决。

【讨论】:

    猜你喜欢
    • 2018-05-02
    • 1970-01-01
    • 1970-01-01
    • 2016-07-26
    • 2014-02-14
    • 1970-01-01
    • 1970-01-01
    • 2015-02-20
    • 1970-01-01
    相关资源
    最近更新 更多