2013-01-04 17 views
7

Jestem nowicjuszem w bibliotece Fpdf, muszę utworzyć plik PDF z bazy danych w aplikacji smarty. Po sprawdzeniu danych z bazą danych jest w porządku, kiedy podać nazwę czcionki poniżej błędu był pokazNiezdefiniowana czcionka: w Fpdf

Warning: in_array() expects parameter 2 to be array, null given in /var/www/html/irmt/library/class/fpdf/fpdf.php on line 526 
<b>FPDF error:</b> Undefined font: helvetica B 

mój kod jest

  $pdf->AddPage(); 
      $pdf->SetFont('Arial','B',14); 
      $pdf->FancyTable($result); 
      $pdf->Output(); 

Proszę mi pomóc jak mogę rozwiązać ten problem. dziękuję adv

Odpowiedz

19

Myślę, że __construct w tworzeniu PDF jest problemem, spróbuj tego w

require_once("fpdf.php"); 
    class pdf extends FPDF 
    { 
     function __construct() 
     { 
      parent::FPDF(); 
     } 
    } 
+0

Dobrze. Ten naprawdę mi się udało. Aby to dodać, może być jeszcze bardziej korzystne przekazanie kilku parametrów do konstruktora, a następnie do klasy FPDF, np. Orientacji itp. To właśnie musiałem zrobić, aby moja strona była orientacją poziomą: 'function __construct ($ orientacja, jednostki $, $ rozmiar) \t {\t \t \t rodzic :: FPDF (orientacja $, jednostki $, $ rozmiar); \t} – gthuo

1

Spróbuj usunąć wiersz $ pdf-> FancyTable ($ rs); i sprawdź, czy masz plik PDF.

+0

FancyTable tylko funkcję, aby utworzyć plik PDF, gdy usunę to w jaki sposób można to praca .... – mohan

+0

Zrobiłem pobrania tutaj z FPDF 1.7 i wypróbowałem twój kod. Jedyny problem miałem z tą linią. Spójrz na mój przykład http://pastebin.com/JmDQwMLk – medina

+0

i nie jaką wartość domyślną dla pdf, muszę utworzyć pdf z bazy danych ..... $ wynik jest zestaw wyników ..... .... – mohan

1

To dlatego, że wywołanie konstruktora biblioteki FPDF, zmienić funkcję biblioteki FPDF (parametry) do __ skonstruować (parametry), a następnie rozprowadź go z pliku. przykład: file: genpdf.php

<?php 
include('fpdf.php'); 
class Genpdf extends Fpdf{ 
    public function __construct() 
    { 
     parent::__construct(); 
    } 
    public function build() 
    { 
     $this->AddPage(); 
     $this->SetFont('Arial','B',16); 
     $this->Cell(40,10,'¡Hola, Mundo!'); 
     $this->Output(); 
    } 
}