PHP-array in PDF werkt niet
Ik probeer een pdf te maken via FPDF. Zoals je ziet probeer ik een adres middels een array in een PDF-bestand te krijgen. Helaas werkt het tot op heden nog niet. Wat ik vreemd vind is dat het wel werkt als ik de array gewoon echo. De fout zit dus niet in de opbouw van de array.
Dit is de foutmelding:
Code (php)
1
2
3
4
5
2
3
4
5
<?php
Notice: Undefined variable: debtor in H:\UsbWebserver\Root\Incasso\pdftest\test_11.php on line 23
Fatal error: Call to a member function getDebtorGender() on a non-object in H:\UsbWebserver\Root\Incasso\pdftest\test_11.php on line 23
?>
Notice: Undefined variable: debtor in H:\UsbWebserver\Root\Incasso\pdftest\test_11.php on line 23
Fatal error: Call to a member function getDebtorGender() on a non-object in H:\UsbWebserver\Root\Incasso\pdftest\test_11.php on line 23
?>
Hieronder het script:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php
require($_SERVER['DOCUMENT_ROOT'].'/Incasso/config/includes.php');
// Instants creeren
$invoice = new Invoice('1');
$user = new User($invoice->getUser());
$debtor = new Debtor($invoice->getDebtor());
$dossier = new Dossier($invoice->getId());
if(strlen($debtor->getDebtorGender()) > 0){$titel = $debtor->getDebtorGender();}else{$titel = 'heer/mevrouw';}
$debiteurAdres = array();
$debiteurAdres[] = $debtor->getCompanyName();
$debiteurAdres[] = 'T.a.v. '.$titel.' '.$debtor->getDebtorName();
$debiteurAdres[] = $debtor->getStraatnaam().' '.$debtor->getHuisnummer();
$debiteurAdres[] = $debtor->getPostcodeCijfers().' '.$debtor->getPostcodeLetters().' '.$debtor->getPlaatsnaam();
class PDF extends FPDF
{
function printFullAdres()
{
foreach($debiteurAdres as $adresRegel){
$this->Cell('','',$adresRegel);
}
}
}
/* Dit werkt wel (geeft een juiste output)
foreach($debiteurAdres as $adresRegel)
{
echo $adresRegel;
}
*/
$pdf=new PDF();
$pdf->printFullAdres();
$pdf->Output();
?>
require($_SERVER['DOCUMENT_ROOT'].'/Incasso/config/includes.php');
// Instants creeren
$invoice = new Invoice('1');
$user = new User($invoice->getUser());
$debtor = new Debtor($invoice->getDebtor());
$dossier = new Dossier($invoice->getId());
if(strlen($debtor->getDebtorGender()) > 0){$titel = $debtor->getDebtorGender();}else{$titel = 'heer/mevrouw';}
$debiteurAdres = array();
$debiteurAdres[] = $debtor->getCompanyName();
$debiteurAdres[] = 'T.a.v. '.$titel.' '.$debtor->getDebtorName();
$debiteurAdres[] = $debtor->getStraatnaam().' '.$debtor->getHuisnummer();
$debiteurAdres[] = $debtor->getPostcodeCijfers().' '.$debtor->getPostcodeLetters().' '.$debtor->getPlaatsnaam();
class PDF extends FPDF
{
function printFullAdres()
{
foreach($debiteurAdres as $adresRegel){
$this->Cell('','',$adresRegel);
}
}
}
/* Dit werkt wel (geeft een juiste output)
foreach($debiteurAdres as $adresRegel)
{
echo $adresRegel;
}
*/
$pdf=new PDF();
$pdf->printFullAdres();
$pdf->Output();
?>
maak er eens van:
function printFullAdres($debiteurAdres)
en roep hem zo aan:
$pdf->printFullAdres($debiteurAdres);
Uitstekend! Ik krijg nu in ieder geval tekst en geen foutmelding op het scherm te zien. Mocht ik verderop nog vragen hebben dan zal ik ze hieronder posten.