Je viens d'installer le script sur mon serveur et quand je tente de faire un des exemple j'ai une erreur :
ERREUR n°7
Fichier : /var/www/vhosts/domaine.fr/httpdocs/NIAVPDF3/html2pdf.class.php
Ligne : 4667
le contenu d'une balise TD ne rentre pas sur une seule page
Auriez vous une solution avant que je bosse sur mon propre fichier html ?
MErci
Bisvan
Spipu Le 28/04/2010 à 10:23 HTML2PDF ne peut pas couper une cellule (TD, TH, DIV, ...) sur plusieurs pages. une cellule doit forcement rentrer sur une page en hauteur. il faut donc découper le TD en hauteur.
après, la mise en page actuelle et ton HTML est peut-etre trop compliquée inutilement, il faudrait peut-etre la simplifier. car comme il est marqué sur le site de HTML2PDF, ainsi que dans l'exemple about.php, cette librairie n'est pas faite pour convertir n'importe quelle page HTML, mais pour aider à la création de documents PDFs.
Spipu Le 28/04/2010 à 13:33 avec tous les exemples ???? tu utilises quelle version de HTML2PDF ? sous quelle version de PHP ? meme l'exemple about.php génère cette erreur ?
Oui même avec about.php
J'utilise la dernière version de HTML2PDF et j'ai PHP5.1.6
Spipu Le 03/05/2010 à 09:57 peut-etre est-ce un problème d'encodage, ou de langue locale sur le serveur ? tu pourrais comparer tes 2 fichiers php.ini entre tes 2 serveurs, pour voir les différences éventuelles ?
salut : j'ai le même problème... et en voyant ça chez Bisvan :
/var/www/vhosts/domaine.fr
j'en déduit que nous travaillons tous les deux sur PLESK, serveurs dédiés et dédiés virtuels
donc on a une config commune qui plante tout.
merci au forum en tout cas, car comme lui j'ai noté la ligne qui générait l'erreur, j'ai commenté la condition et le renvoi d'erreur... et ça marche, ne me demandez pas pourquoi !
J'ai la même erreur également, avec un fonctionnement normal en local et une erreur sur notre serveur distant. Je n'ai aucune différence de configuration si ce n'est "expose php" qui est désactivé sur notre serveur. Nous utilisons la même version majeur php 5.2 mais des versions mineurs différentes.
Si je désactive la vérification testTDin1page, cela fonctionne mais la mise en page est complètement désorganisé par rapport en local.
J'ai également l'erreur avec les exemples !
Spipu Le 07/06/2010 à 16:39 ceci se produit avec quelle version de HTML2PDF ? y aurait-il egalement une différence de langue locale ?
Ceci se produit avec la version 3.30 / 4.01 (2001-05-07).
En local fr_FR.UTF-8
Sur le serveur fr_FR.UTF-8
Spipu Le 07/06/2010 à 17:03 ca plante avec la 3.30 et la 4.01 ???
Cela plante avec la version 4.01, je n'ai pas testé avec la 3.30
Spipu Le 07/06/2010 à 18:39 et c'est exactement le meme HTML qui est fournit à HTML2PDF ? est-ce que tu pourrais enregistrer le contenu de la variable (en utilisant file_put_contents par exemple), et comparer les 2 fichiers ainsi générés sur la DEV et sur la PROD ?
oui c'est exactement le même html qui est fournit, en voici un version simplifie qui marche en dev mais pas en prod :
$output = '<table align="center" style="width:100%;">';
$output .= '<tr><td style="text-align:center;"><img src="./logo.jpg" alt="Logo" style="height:110px" /></td></tr>';
$output .= '<tr><td style="font-size:18px;padding-top:10px;padding-bottom:10px">test</td></tr>';
$outpu.='</table>';
Spipu Le 07/06/2010 à 19:29 juste cet exemple marche en dev mais pas en prod ? petite question : les 2 php ont été compilés avec les memes options ? que dit phpinfo() ?
par contre, un truc qui pourrait faire marcher quoi qu'il arrive : toujours préciser la largeur des elements td, th, div, table, ...
tous les exemples marchent en dev mais prod, de même pour les exemples fournit avec html2pdf.
Par contre en testant ce matin cette exemple fonctionne, mais des que je rajoute une ligne (<tr><td><td></tr>) cela ne fonctionne plus
$output = '<table align="center" style="width:100%;">';
$output .= '<tr><td style="text-align:center;"><img src="./logo.jpg" alt="Logo" style="height:110px" /></td></tr>';
$outpu.='</table>';
Préciser les largeurs ne fonctionne pas non plus.
Concernant les options de php, je ne pourrais pas dire par contre en dev nous sommes en 64bits et 32bits en prod, mais en comparant les phpinfo(), il n'y a pas de différences entres les options a part certaines version de lib.