1

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

2

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.
Ancien pseudo : lolo

3

Euh le problème c'est que je n'ai pas encore testé ma page html. J'ai cette erreur pour TOUS les exemples fournis avec le script sad

4

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 ?
Ancien pseudo : lolo

5

Oui même avec about.php

J'utilise la dernière version de HTML2PDF et j'ai PHP5.1.6

6

heu.. ce n'est absolument pas normal là sad

vous utilisez HTML2PDF seule ? ou dans un framework ?
Ancien pseudo : lolo

7

Bonjour !
meme probleme pour moi
par contre sur mon serveur local ca fonctionne , mais sur le serveur en ligne l'erreur apparait

j'ai commenté la ligne 4667 et ca fonctionne, j'ai ensuite consulté le pdf généré et il ne semble pourtant pas y avoir de différence avec le pdf généré en local (en tout cas je n'ai pas vu de tableau depassant la page)

personnellement j'ai inclu html2pdf dans mon framework personnel , mais bon , vu que ca fonctionne sans souci en local , je ne pense pas que cela vienne de la. Peut etre une version de php ou autre

en tout cas , html2pdf c'est excellent ! smile

8

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 ?
Ancien pseudo : lolo

9

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 !

10

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 !

11

ceci se produit avec quelle version de HTML2PDF ? y aurait-il egalement une différence de langue locale ?
Ancien pseudo : lolo

12

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

13

ca plante avec la 3.30 et la 4.01 ???
Ancien pseudo : lolo

14

Cela plante avec la version 4.01, je n'ai pas testé avec la 3.30

15

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 ?
Ancien pseudo : lolo

16

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>';

17

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, ...
Ancien pseudo : lolo

18

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.

19

alors là, c'est vraiment zarb ?! et vu que je ne peux pas reproduire le pb chez moi, je vais avoir du mal à le corriger sad

si pas hazard tu arrives à trouver une piste, ca m'interesse fortement !
Ancien pseudo : lolo