FPDF 将文件保存在服务器 QNAP(NAS) 上的文件夹中?

Posted

技术标签:

【中文标题】FPDF 将文件保存在服务器 QNAP(NAS) 上的文件夹中?【英文标题】:FPDF Saving file in a folder on the server QNAP(NAS)? 【发布时间】:2018-10-22 08:43:51 【问题描述】:

大家好,我有一个用 FPDF 和 php 编写的脚本来创建和保存 PDF 文档。该脚本不起作用(我猜我保存路径的方式是错误的)。 我希望用户单击保存,并且文档必须保存在托管网站的服务器内的文件夹中(在这种情况下是 QNAP)。这是脚本:

<?php
session_start();
$user = $_SESSION['username'];
$sicep = $_SESSION['sicep'];
$notesicep = $_SESSION['notesicep'];

require ('fpdf/fpdf.php');

$pdf = new FPDF();

$pdf->AddPage();
$pdf->SetFont('Arial','B',11);

$pdf->Cell(100, 8, 'Operatore Centrale Operativa: '.$user, 1 ,1);
$pdf->Cell(100, 8, 'Effettuato in data: ' .date("d/m/Y"). ' In ora: '.date("h:ia") , 1 ,1);
$pdf->Cell(180, 10, 'Verifica funzionale sistema SICEP MVS NET:',1,1);
$pdf->Cell(180, 10, $sicep,1,1);
$pdf->Cell(180, 10, 'Note: '.$notesicep,1,1);
$filename = "orario".date("d/m/Y")."-".date("h:ia").".pdf";
$dir = "/Web/PDF";
$pdf->Output($dir.$filename);
?>

脚本位置是:

\\192.168.1x.x\Web\验证

并且PDF文件应该保存在这个位置:

\\192.168.1x.x\Web\PDF

我该怎么做?

【问题讨论】:

您好,欢迎来到 Stack Overflow。请尝试将您的问题重新表述为 question,例如:“我预计脚本中的 foo 会发生,但 bar 正在发生。为什么会这样?我还尝试将第 3 行从 baz 更改为zot 但它给了我一个关于“位置 12345 输入错误”的错误 - 即,明确你在问什么以及为什么你当前的脚本不起作用。这个将使人们更容易以一种好的方式回答您的问题。谢谢,再次欢迎您访问该网站。 【参考方案1】:

正如FPDF documentation 中所述,您必须使用 F 作为输出函数的参数才能将 PDF 保存在本地服务器上:

$pdf->Output('F','/path/filename.pdf');

【讨论】:

这样可以吗?输出 ('F', '/path/$filename');因为我需要使用包含日期和时间的特定名称保存文件 你需要指定路径+文件名,'/path/filename.pdf'只是一个例子。 如果我理解正确,我需要这样做: $filename = "orario".date("d/m/Y")."-".date("h:ia ").".pdf"; $pdf->输出('F', '/Web/PDF/'.$filename); 不工作,但我猜路径是错误的。我只是使用此路径“/Web/PDF/”,所有内容都托管在 QNAP 上的此位置“\\192.168.1x.x\web\PDF”。但是,即使没有 var 作为文件名,即使使用此路径也无法使用“/192.168.1x.x/web/PDF/”。是 QNAP (NAS) 的事实可能与它有关? 试试相对路径../PDF/filename.pdf

以上是关于FPDF 将文件保存在服务器 QNAP(NAS) 上的文件夹中?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用Qfile来存取及分享QNAP Turbo NAS 上的档案

威联通(QNAP)NAS忘记密码怎么办?手把手教你!请收藏!关键时刻有用!

QNAP TS-219P NAS容量扩充

法新社和 Time Machine 停止在 QNAP HS-251+ 上工作

如何使用qnap python3

将使用 FPDF 创建的 pdf 插入/保存到数据库中