PDF文件未下载或未保存到文件夹

时间:2019-06-17 21:37:53

标签: javascript php json pdf fpdf

我不久前发布了有关此问题的文章,我以为我已经知道了,但是什么也没有发生。 问题:我正在尝试生成捕获客户端签名的PDF文件。从本质上讲,它们在框中输入名称,该名称会与所有其他信息(例如日期,条款和条件等)一起显示在pdf.php文件中。 我创建了一个从FPDF扩展的类,尽管使用JavaScript,但我正在发送要填充的名称,并通过该pdf.php文件对其进行处理,并且应该返回“已签名”的pdf文件。 但是,我的pdf文件没有下载,保存或任何选项(I,D,F,S)。 以下是我的代码中该部分的摘要。

pdf.php

Time.scheduledTimer()

.js文件(JSON)

$tempDir = "C:/PHP/temp/";
$thisaction = filter_input(INPUT_POST, 'action', FILTER_SANITIZE_STRING);
$answers = filter_input(INPUT_POST, 'encFormData');
$decFD = json_decode($answers);

$pdf = new WaiverFPDF();
// Pull values from array
$returnVals = array();
$returnVals['result'];
$returnVals['html'] = '';
$returnVals['errorMsg'] = '';

//the name of the person who signed the waiver
$name = $decFD->signWaiver;
$today = date('m/d/Y');

if($thisaction == 'waiverName'){
        // Generate a new PDF
        $pdf = new WaiverFPDF();
        $pdf->AddPage()
        $pdfFile = "Waiver". $name . ".pdf";
        ....
        // Output form
        $pdf->Write(8, 'I HEREBY ASSUME ALL OF THE RISKS...');
        // Line Break
        $pdf-> all other info...
        $outFile  = $tempDir . $pdfFile;
       //output pdf
        $pdf->Output('D', $pdfFile);

        $returnVals['result'] = true;
}
else{
    $returnVals['errorMsg'] = "There was an error in waiver.php";
    $returnVals['result'] = false;
}

echo json_encode($returnVals);
?>

我知道我的错误处理非常简单,但是我得到的只是成功消息,但没有生成pdf文件...我不确定我在做什么错。我还确保文件(当我保存到文件时)是可写的。 class_WaiverFPDF.php

function sendWaiver(){
    var formHash = new Hash();
    formHash.signWaiver = $('signWaiver').get('value');
    console.log ("name being encoded");
    waiverNameRequest.setOptions({
        data : {
            'encFormData' : JSON.encode(formHash)
        }
    }).send();
return true;
}
waiverNameRequest = new Request.JSON({
        method : 'post',
        async : false,
        url : 'pdf.php',
        data : {
            'action' : 'waiverName',
            'encFormData' : ''
        },
        onRequest : function() {
        //  $('messageDiv').set('html', 'processing...');
            console.log("waiver onRequest");
        },
        onSuccess : function(response) {
            $('messageDiv').set('html', 'PDF has been downloaded');
            if (response.result == true) {
                console.log('OnSuccess PDF created');
            } else {
                $('messageDiv').set('html', response.errorMsg);
                console.log('PDF error');
            }
        }
    });

0 个答案:

没有答案