Bonjour à tous.

Je n'arrive pas à résoudre mon pb, alors j'espère que vous pourrez m'aider.
J'ai besoin de créer un PDF à partir de mon code html.

J'ai trouvé cette bibliothèque qui m'a l'air pas mal ==> http://html2pdf.fr/

Le problème, c'est que j'ai une erreur : TCPDF ERROR: Some data has been output, can't send PDF file.

Je développe sous symfony. Voilà mon code :

Tout d'abord j'ai un formulaire dans un partial _form :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
<div class="formul">
 
	<form method="post">
 
		Date <input type="text" name="date_med_rand" class="dateRdv" value="<?php echo date('Y').'-'.date('m').'-'.date('d'); ?>"/></td>
		<input type="radio" name="rad_med_rand" value="Matin"> Matin<br/>
		<input type="radio" name="rad_med_rand" value="Journee"> Journée <br/>
		<input type="radio" name="rad_med_rand" value="Nuit"> Nuit<br/>
 
		<input type="submit" name="btn_OK_med_rand" value="IMPRESSION"/>
 
	</form> 
</div>

J'ai dans mon action, l'action de mon bouton :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
/* * Bouton "IMPRESSION" du formulaire*/ 		if($this->getRequestParameter('btn_OK_med_rand')){	
	$this->date = $this->getRequestParameter('date_med_rand');
	$this->poste = $this->getRequestParameter('rad_med_rand');
 
	if($this->date!='' && $this->poste!=''){
		$this->medaille = Doctrine::getTable('TSoudure')->getRandMed($this->date, $this->poste);
		$this->nb_soud = Doctrine::getTable('TSoudure')->getNbSoudMedaille_Finition($this->medaille);
 
		$this->partial = 'partial_graph';
	}
}
Ensuite dans mon indexSuccess, il doit me générer ici mon PDF :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
else if( $partial == 'partial_graph' ) {
	ob_start();
	include_partial('form_speciaux/graph', array('medaille'=>$medaille,
											'nb_soud'=>$nb_soud));
	$content = ob_get_clean();
 
	// conversion HTML => PDF
	require_once('include/html2pdf/html2pdf.class.php');
	try
	{
		$html2pdf = new HTML2PDF('P','A4','fr', false, 'ISO-8859-15');
		//$html2pdf->setModeDebug();
		$html2pdf->setDefaultFont('Arial');
		$html2pdf->writeHTML($content);
		$html2pdf->Output('graph_DPX.pdf', false);
	}
	catch(HTML2PDF_exception $e) { echo $e; }
}
Et voilà le code de mon partial graph :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
<?php 
	echo "Nombre de soudures <b>: ".$nb_soud."</b><br><br>";
	for($i=1; $i<=$nb_soud; $i++){ 
 
			$NumOrdre = $i;
			echo "<b>Soudure ".$i."</b>";
			$soudure = p_courbe_finition_makegraph($medaille, $NumOrdre);
			p_courbe_finition_sidebar($soudure, $medaille, $NumOrdre);
			echo "<br><br>";
 
	}
?>
Ce que je veux, c'est que quand j'appuies sur le bouton IMPRESSION de mon formulaire, je veux enregistrer les graph qui sont générés sur ma partial _graph.

Mais j'obtiens l'erreur : TCPDF ERROR: Some data has been output, can't send PDF file.

Je suis complètement bloquée. J'ai vu que ça pouvait être à cause des headers qui sont mal placé, d'un echo mal placé. Mais avant d'afficher mon partial, je ne fais qu'appeler des include_partial pour placer mon header et mon footer.

Qqun a une idée ?