Da qualche tempo utilizzo FPDF per la stampa dei miei programmini in PHP.
Grazie anche a questo forum ci riesco abbastanza bene.
Ho provato ad utilizzare il JavaScript (fpdf_js) per effettuare l'autoprint delle stampe, ma pur avendo seguito i consigli di alcuni di voi (Marchetto ecc.) non riesco ad effettuare l'autoprint di un file che richiama dati da un DB.
Vi riporto un breve esempio:
Questo è il file che lancia la stampa
Codice PHP:
<?php
define('FPDF_FONTPATH','font/');
require('fpdf_js.php');
include ("../config.php");
require('fpdf.php');
include('classe_stampa.php');
class PDF_AutoPrint extends PDF_Javascript
{
function AutoPrint($dialog=false)
{
//Embed some JavaScript to show the print dialog or start printing immediately
$param=($dialog ? 'true' : 'false');
$script="print($param);";
$this->IncludeJS($script);
}
}
$pdf=new PDF_AutoPrint();
$pdf->Open();
$pdf->AddPage();
$pdf->AliasNbPages();
$pdf->SetFont('Arial','',10);
//$pdf->Text(90, 50, 'Print me!');
$pdf->Table("SELECT * FROM prova");
//Launch the print dialog
$pdf->AutoPrint(true);
$pdf->Output();
?>
Questa è la classe che viene richiamata
Codice PHP:
<?php
require('fpdf.php');
class PDF_classe extends PDF_Javascript
{
function Row($data)
{
$this->SetFillColor(232,232,232);
$this->SetFont('Arial','',8);
//Cognome
$this->SetY(8);
$this->Cell(0,0,'Cliente',0,0,'L',0);
$this->Cell(0,0,$data[Cliente],0,0,'R',0);
}
function Table($query)
{
//errore query
$res=mysql_query($query) or die('Error: '.mysql_error()."
Query: $query");
while($row=mysql_fetch_array($res))
{
$this->AddPage();
$this->Row($row);
//$this->AddPage();
}
}
}
?>
Se lancio la semplice stampa (print me!) va tutto bene, invece, se lancio la select mi restituisce una pagina bianca.
Grazie per l'aiuto.