使用FPDF将文件保存到预先指定的目录中

Sha*_*min 16 php pdf fpdf

我想将PDF文件保存到用户指定的目录中.我正在使用FPDF.代码如下:

<?php
//echo "<meta http-equiv=\"refresh\" content=\"0;url=http://www.train2invest.net/useradmin/atest_Khan.php\">";
require('fpdf.php');

//create a FPDF object
$pdf=new FPDF();

//set font for the entire document
$pdf->SetFont('times','',12);
$pdf->SetTextColor(50,60,100);

//set up a page
$pdf->AddPage('P');
$pdf->SetDisplayMode(real,'default');

//Set x and y position for the main text, reduce font size and write content
$pdf->SetXY (10,60);
$pdf->SetFontSize(12);
$pdf->Write(5,'Dear Ms.XYX');

 $filename="test.pdf";
//Output the document
$dir = "/G:/PDF/test.pdf/"; // full path like C:/xampp/htdocs/file/file/
$pdf->Output($dir.$filename,'F');
?>
Run Code Online (Sandbox Code Playgroud)

现在即使我"G:\PDF\"输入文件名也没有保存!我尝试过以下方法:

$filename="G:\PDF\test.pdf";
$pdf->Output($filename.'.pdf','F');


$filename="G:\\PDF\\test.pdf";
$pdf->Output($filename.'.pdf','F');

$filename="G:/PDF/test.pdf";
$pdf->Output($filename.'.pdf','F');


$filename="/G:/PDF/test.pdf/";
$pdf->Output($filename.'.pdf','F');
Run Code Online (Sandbox Code Playgroud)

我已经检查过我正在尝试编写的目录是否具有写入/读取权限,并且它就在那里.它仍然不起作用!

请帮助别人......

小智 35

您正在错误地使用F选项,F旨在将本地PDF保存在用户计算机上的特定目录中.所以你会使用类似的东西:

$filename="/home/user/public_html/test.pdf";
$pdf->Output($filename,'F');
Run Code Online (Sandbox Code Playgroud)

这将保存在您的Web服务器的public_html目录中


Dav*_*man 6

检查这里的语法:http : //www.fpdf.org/en/doc/output.htm 是:string Output([string dest [, string name [, boolean isUTF8]]]),所以你必须写:

$pdf->Output('F', $filename, true); // save into the folder of the script
Run Code Online (Sandbox Code Playgroud)

或例如:

$pdf->Output('F', '/var/www/html/wp-content/' . $filename, true); // save into some other location
Run Code Online (Sandbox Code Playgroud)

或相对路径:

$pdf->Output('F', '../../' . $filename, true); // to parent/parent folder
Run Code Online (Sandbox Code Playgroud)

但是,我不确定您是否可以使用 Windows 绝对路径...


Pau*_*man 0

您的 Apache 服务可能具有的权限:

http://www.php.net/manual/en/function.opendir.php#87479