Hoi,

Ik zit al een aantal dagen met het volgende probleem te worstelen.

<?php
ini_set('display_errors',1);
error_reporting(E_ALL);
require_once("include/config.php");
session_start();

$_POST['id'] = "";

if(isset($_POST['id'])){
//Als ik het hier plaats werkt het wel.
require_once("include/Mollie/initialize.php");

if($payment->status == "paid"){

//vanaf hier
ob_start();
require_once('factuur.php');
$pdf_html = ob_get_contents();
ob_end_clean();

require_once('include/dompdf/dompdf_config.inc.php');

$dompdf = new DOMPDF();
$dompdf->load_html($pdf_html);
$dompdf->render();
$pdf_content = $dompdf->output();
//tot hier

require_once('include/swift/swift_required.php');

while($msgorder = mysql_fetch_object($sqlorder)){

$mailer = new Swift_Mailer(new Swift_MailTransport());

$message = Swift_Message::newInstance()
->attach(Swift_Attachment::newInstance($pdf_content, 'file.pdf', 'application/pdf'));
}
}
}
else{
echo("Error melding");
}
?>

Het gedeelte (vanaf hier - tot hier) werkt niet als het op de huidige plaats in het script staat, staat het op de plaats (//Als ik het hier plaats werkt het wel). dan werkt het wel goed.
Maar op de plaats waar het nu staat geeft het de melding Class dompdf not found, en daar moet het komen te staan.

Kan het komen doordat ik de mollie class include en de dompdf class?
Ik hoop dat de uitleg duidelijk is.

ps. ik heb een deel van de code weggelaten.
je includeert niet de DOMPDF-class. Ik zie alleen een dompdf_config.inc.php.
Dat is volgens mij het enige bestand wat ik moet includeren. Als ik op deze website kijk bij de voorbeelden is dat ook het enige bestand wat wordt geincludeert. http://www.digitaljunkies.ca/dompdf/faq.php

En als ik het boven de mollie class plaats werkt het wel.
Wel apart, maar dan zet je die include toch boven je mollie-class?
Dat werkt dus ook niet dat heb ik ook al geprobeer dan krijg ik ook de melding Class dompdf not found.
Edit: Ik las even niet goed.

Het werkt in de root, omdat coding van dompdf_config.inc.php daarop afgesteld is, dus als je hem verplaatst naar een ander map, zul je dus ook paths naar functions/classes moeten wijzigen in dompdf_config.inc.php.
Dus ik moet de class van dompdf in dezelfde map zetten als waar het bestand staat?

EDIT:

Ook dat werkt niet
Nee, je moet de paths wijzigen naar classes/functions of laat hem gewoon in de root.
Waar vind ik de paths? Ik kan die niet vinden in het dompdf_config.inc.php.
Jawel hoor. Kijk naar define() in je dompdf_config.inc.php
Daar staat onder andere dit:

<?php
/**
* The root of your DOMPDF installation
*/
define("DOMPDF_DIR", realpath(dirname(__FILE__)));

/**
* The location of the DOMPDF include directory
*/
define("DOMPDF_INC_DIR", DOMPDF_DIR . "/include");

/**
* The location of the DOMPDF lib directory
*/
define("DOMPDF_LIB_DIR", DOMPDF_DIR . "/lib");

/**
* The location of the DOMPDF font directory
*
* Note this directory must be writable by the webserver process (or user
* executing DOMPDF from the CLI). *Please note the trailing slash.*
*/
define("DOMPDF_FONT_DIR", DOMPDF_DIR . "/lib/fonts/");

?>

Reageren