【问题标题】:How to open a pdf file in new tab from controller PHP (laravel)如何从控制器 PHP(laravel)在新选项卡中打开 pdf 文件
【发布时间】:2017-01-19 14:39:52
【问题描述】:

您好,我是 php 编程新手。我现在正在使用 laravel 5.2。

我已使用外部服务从我的 html 页面创建 pdf。为此,我使用了 pdfcrowd。我将内容写入本地系统中的 pdf 文件。它的位置是/var/www/html/testproject/test_pdf.pdf。

它工作正常。现在我的要求是,我必须在控制器的新选项卡中打开该 pdf 文件。我的控制器名称是 adminController。在里面我使用了一个函数来打开pdf。

请看下面的代码:

public function open_pdf() {
  $file_location='/var/www/html/testproject/test_pdf.pdf';
  ----------?
}

请提出你的想法。

【问题讨论】:

标签: php laravel file laravel-5


【解决方案1】:

要了解的重要一点是,我们无法从 php 控制器打开新选项卡。因此,在视图页面 (testpage.blade.php) 中,我在标签中使用了 'target="_blank" 代码。请看下面的代码: <a href="{{ url('/') }}/testproject/openpdf"> target="_blank"

【讨论】:

  • 它将无法正常工作。试试 ?
  • 你的意思是<a href="{{ url('/') }}/testproject/openpdf" target="_blank">?
【解决方案2】:

尝试在您的 html 标签中添加target="_blank" 它将正常工作。 你可能用过这样的

<a href="{{ url('/') }}/testproject/openpdf">

请试试这个

<a href="{{ url('/') }}/testproject/openpdf" target="_blank">

【讨论】:

  • 我将 barryvdh/laravel-dompdf 用于 PDF。使用 Laravel 5.6.7。我必须显示 pdf 是新标签。我在路径中使用了 window.open 传递,这是一个 api url。我最担心的是,该 url 无需身份验证即可打开。如果我在路由中使用中间件身份验证,它会尝试重定向到登录,无法看到 PDF。请注意,我不是在公共文件夹上显示 pdf 文件,而是使用流方法生成 pdf。请指导。
猜你喜欢
  • 2012-05-02
  • 1970-01-01
  • 2019-04-12
  • 1970-01-01
  • 2016-05-04
  • 1970-01-01
  • 2013-12-22
  • 2020-10-09
  • 2018-11-28
相关资源
最近更新 更多