[英]Try to show pdf file using PHP and fpdf
背景:它的'ae學習網站,當用戶處於學習階段時,它將在前3頁顯示閱讀內容,之后需要用戶進行測試,當用戶克服所有挑戰時,它將顯示pdf證書。
目前,問題是:在到達最后一頁后,它總是向我顯示一些奇怪的詞:(以下是所有的一部分)
(%PDF-1.3 3 0 obj <> endobj 4 0 obj <>streamx 3R 2 35W( rQ w3T04 30PISp Z* [ (hx + ) (j * D7?W)
以下是代碼的一部分,其文件名為load_data.php
else if ($cur_page == $no_of_paginations){
ob_end_clean();
require("../fpdf.php");
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
if (preg_match("/MSIE/i", $_SERVER["HTTP_USER_AGENT"])){
header("Content-type: application/PDF");
} else {
header("Content-type: application/PDF");
header("Content-Type: application/pdf");
}
$pdf->Output();
exit;
}
這是分頁的ajax:
function loadData(page){
// debugger;
loading_show();
$.ajax
({
type: "POST",
url: "load_data.php",
data: { page: +page, tableName: $.urlParam('modules') },
//data: "page="+page,
success: function(msg)
{
$("#container").ajaxComplete(function(event, request, settings)
{
loading_hide();
$("#container").html(msg);
});
}
});
}
loadData(1); // For first time page load default results
$('#container .pagination li.active').live('click',function(){
var page = $(this).attr('p');
loadData(page);
})
FPDF允許您輸出PDF的幾個選項。 您可以強制下載,將文件保存到文件系統,或者您可以在頁面上顯示它們,但您不能做的是生成PDF並將其顯示為內嵌,如Jasper所述。 這是你要做的:
創建一個新文件(可能是show_pdf.php):
require("../fpdf.php");
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
if (preg_match("/MSIE/i", $_SERVER["HTTP_USER_AGENT"])){
header("Content-type: application/PDF");
} else {
header("Content-type: application/PDF");
header("Content-Type: application/pdf");
}
$pdf->Output();
您可能需要通過$ _GET傳遞特定的數據參數,以便在展開此代碼時使其正常工作。
要在頁面上顯示它,您將執行以下操作:
else if ($cur_page == $no_of_paginations){
?>
<iframe src="show_pdf.php?id=asdfasdf"></iframe>
<?php
}
看起來您正在嘗試以內聯方式顯示PDF。 為此,您應該創建一個IFRAME,其中包含指向PDF創建腳本的源。 這樣瀏覽器可以選擇是否可以顯示PDF,如果不能,則可以下載該文件。
要點:瀏覽器不知道如何解釋你給它的東西。
在borwser中顯示fpdf傳遞第二個參數'I'
$filed = $pdf->Output('abc.pdf', 'I');
Yii :: $ app-> response-> format = \\ yii \\ web \\ Response :: FORMAT_RAW;
Yii :: $ app-> response-> headers-> add('Content-Type','application / pdf');
$pdf = new FPDF();
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Arial', 'B', 15);
$pdf->Cell(40, 10, 'Hello World');
$pdf->Output();
使用對象$('#fact')。html('
Usted no tiene instalado un pugin para .pdf en este navegador。
Usted puede usar Este link para descargar el archivo PDF。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.