2016-03-22 12 views
0

私のプロジェクトでは、fpdfを使用して、データベースからのデータに基づいてPDFファイルを生成します。 しかし、私はファイルを作成して保存するいくつかのメソッドを呼び出すことによってpdfを事前生成したいと考えています。 コードでFPDFを作成し、メソッドで呼び出す

($myPDF->createPDF($id)){ 
echo 'File was created'; 
}else{ 
echo 'There was a problem creating the file'; 
} 

save_data.php createPDF.php

//Code that generate the PDF using FPDF and at end save the file to server 
$pdf->Output('/var/www/html/my_dir/my_pdf.pdf','F'); 

だから、基本的に私はこの方法でcreatePDF.phpを配置し、PDFファイルが作成されたかどうかtruefalseを返すようにしたいと思います。

編集: もし私がちょうどOutput()から応答を得ることができれば、はるかに簡単だろう。

ファイルが存在するかどうかを確認してください。

+0

最初にそれをチェックして、ユーザーフレンドリーな(または参照するために良いことだ何か)リマインダー/情報を表示します。 – rhavendc

+0

あなたが尋ねるものは不明です。明らかに、ある種のメソッドの中からドキュメントを作成するコードを呼び出すことができます。しかし、ファイルを使うのは良い考えですか?ファイルの問題は、衝突を防ぎ、しばらくしてファイルをクリーンアップするために、一意の名前を生成しています。なぜファイルの代わりに読むことができる出力バッファを使用しないのですか? – arkascha

+0

ファイルを後で使用するためにサーバーに置く必要があるということです。ファイルが正常に見えない場合。ユーザーは入力を調整し、ファイルを置き換えることができます。 – Andy

答えて

0

あなただけのファイルが正常にディスクに保存されているかどうかを知りたい場合は、次の

function createPdf($pdf, $filename) { 
    // remove file if it already exists 
    if(file_exists($filename)) unlink($filename); 

    // save pdf 
    $pdf->output($filename, 'F'); 

    // return true if successfull, false otherwise 
    return file_exists($filename); 
} 
+0

理想的には、メソッドとして配置してから、次のようなPDFを生成したい: '$ pdf = $ buildPDF-> build($ db_value);' 'if($ buildPDF-> createPdf($ pdf、$ filename )){//ファイルが生成され、添付ファイルとして電子メールで送信できます} '' – Andy

関連する問題