Deze string moet geschreven worden in het pdf.php file.
De pdf.php file is een file bestaande uit html met een table.
Het enige probleem is dat het de string onderaan buiten de html tags schrijft terwijl ik het graag zou hebben binnen de html tags en liefst nog binnen de table van de file
Je zou inderdaad verwachten dat die $total wordt opgeslagen in de sessie of een database. Daarna kan pdf.php daarmee vervolgens zelf in een if ($total > 0) de weergave regelen.
Ik zal misschien een beetje meer uitleg geven.
Het is de bedoeling dat de "echo &total" op de pdf staat.
Deze pdf wordt gemaakt door de file pdf.html.
Ik heb het al verkregen dat de echo &total het resultaat al weergeeft onder de html tags van de pdf.html file en weergegeven in mijn browser, maar om het te laten genereren op een pdf die doorgestuurd wordt moet het binnen de html tag staan.
Ah, dus pdf.html is het sjabloon wat je gebruikt om een PDF-bestand te genereren.
Dat was nogal onduidelijk omdat je het in je code hebt over pdf[color=#ff0000].php[/color].
Ik denk dat het zin heeft om je gedachten (en je code) even te ordenen.
Wat je wilt bereiken is volgens mij vrij duidelijk: je hebt een lap HTML waarin variabele delen zitten die je wilt vullen via PHP. Vervolgens moet deze lap HTML in een PDF-bestand verwerkt worden. Tot zover correct?
Je hebt niet per se een apart bestand nodig als sjabloon (maar dit is uiteraard wel handig voor het overzicht).
Ik denk dat er verschillende methoden zijn om je probleem op te lossen, je zou bijvoorbeeld kunnen denken aan output buffering. Een output buffer is als het ware een emmer waarin je output opvangt. Als je klaar bent met het vullen van de emmer besluit je wat je hiermee doet: alsnog afdrukken, of de inhoud opslaan of de inhoud toekennen aan een variabele.
Voorbeeld:
<?php
$test = 'lala';
// start output buffering
// tekst die normaal op het scherm zou verschijnen wordt dus nu opgevangen in de buffer
ob_start();
?><p>Dit is een test: <?php echo $test ?>.</p><?php
// retourneer de inhoud van de buffer en schakel output buffering uit
$html = ob_get_clean();
?>
De inhoud van $html is nu dus:
<p>Dit is een test: lala.</p>
Een andere manier is een include. Hiervoor kun je geen .html-bestand gebruiken omdat PHP hier niet in uitgevoerd wordt. Als je in je HTML-bestand een PHP-blok zet dan heeft dit voor HTML geen betekenis en wordt deze dus ook niet verwerkt, je zult dit via een PHP-bestand moeten regelen.
Stel je hebt het bestand html.php:
<p>Dit is een test: <?php echo $test ?>.</p>
Dit is in wezen je sjabloon.
Vervolgens kun je dezelfde truuk weer uithalen met output buffering (in een ander bestand, bijvoorbeeld pdf.php):
<?php
// initialiseer de variabelen die in je sjabloon worden gebruikt
$test = 'hallo';
// start output buffering
ob_start();
// include het bestand
include './html.php';
$html = ob_get_clean();
?>
Hartelijk bedankt voor je reactie maar helaas lukt het mij niet.
Ik heb de volledige code naar jou gest. via pm en hopelijk vind je de tijd om er even naar te kijken .
Alvast Bedankt.