1

Bonjour,
j'essaye d'utiliser la classe avec un tableau comme suit:
<table border="2" bordercolor="#256698">
 <tr>
    <td width="20%"><b>'._I.'</b>- FIA n&deg; '.$row[numint].'</td>
    <td width="30%" align="left">'.$row[demandeur].'</td>
	<td align="right">'._FIADATEINC.$row[dateinci].' - '._FIAHEUREINC.$row[heureinci].'</td>
</tr>
    <tr> 	
      <td width="20%" align="left">'._FIALieu.':</td>
	  <td width="30%"><strong>'.$row[lieu].'</strong></td>
      <td width="50%">'._FIACirconstances.'<br /> 
      '.$avarie.'</td>	 
    </tr>
    <tr> 
		<td width="20%" align="left">'._FIAEmp.':</td>
		<td width="30%"> <b>'.$row[emp].'</b> </td> 
		<td>&nbsp;</td>
    </tr>
    <tr>
		<td width="20%" align="left">'._FIAEquip.':</td>
		<td width="30%"><b>'.$row[equip].'</b> </td>
		<td>&nbsp;</td>
    </tr>



mais le pdf rendu depasse tres largement la page... alors qu'avec la classe standard html2pdf ca rentre parfaitement.
Toutes les variables php sont du texte simple ne depassant pas 200 caractere..
Faut-il utiliser autre chose que width="100%"?
Merci pour vos conseils.
A+
VooDoo

2

tu n'as pas mis de largeur globale à ton tableau principal... de plus il faut préciser la largeur de tous les elements TD
Ancien pseudo : lolo

3

ok merci pour ta réponse j'ai progressé depuis mais j'ai toujours le probleme pour de long texte...
j'ai vu que tu avais proposé la solution d'un div, mais ca fait pas trés joli. sad
Est-ce la le seul moyen?

4

tromb Fichier joint : owYg (html2pdf.jpg)

5

Quest-ce que tu veux dire par :
voodoonet (./1) :
avec la classe standard html2pdf


de plus, pourrais-tu mettre un exemple de code HTML (avec son CSS si il y en a) qui déconne ? (en isolant la ligne qui fait déconner)

Ancien pseudo : lolo

6

Spipu (./5) :
Quest-ce que tu veux dire par :
voodoonet (./1) :
avec la classe standard html2pdf


de plus, pourrais-tu mettre un exemple de code HTML (avec son CSS si il y en a) qui déconne ? (en isolant la ligne qui fait déconner)

topics/116591-html2fpdf-sourceforge-net
avec une autre classe html2pdf je voulais dire pardon...

pour les CSS meme sans ca depasse, et le code html et celui de dessus corrigé comme tu l'as dit ex:

>
	$fiahtml2='	<table width="100%" border="2" cellpadding="1"  align="center" cellspacing="0" >
							  
						<tr><td colspan="2"><b>'._FIAANALYSE.'</b></td>
							<td colspan="2"></td>							
							<td colspan="3"></td>					      
					    </tr>
							  <tr>
								<td align=center><b>'._FIACAUSES.'</b></td>
								<td align=left><b>'._FIAACTIONS.':</b></td>
								<td align=center><b>'._FIATYPE.' / '._FIALEVEL.'</b></td>
								<td align=center><b>'._FIARESP.':</b></td>
								<td align=center><b>'._FIADUEDATE.' / '._FIADONEDATE.':</b></td>
								<td align=center><b>'._FIASTATUS.'</b></td>
								</tr>'; 
							for ($i=1;$i<=$nbactions;$i++)
								{
									//mise en forme
									$Cause[$i] = stripslashes($cause[$i]);
									$Description[$i] = stripslashes($action[$i]);
									$fiahtml2.='
										<tr> 
//ligne a probleme si bcp de texte:
							 			<td align=left style="font-size: 8px">'.$Cause[$i].'</td>
										<td align=left style="font-size: 8px">'.$Description[$i].'</td>

										<td align=center >'.$Actiontype[$i].'<br>'.$Alevel[$i].'</td>
										<td align=left >'.$resps[$i].'</td>
										<td align=center style="font-size: 8px">'.$DueDate[$i].' / '.substr($DoneDate[$i],0,10).'</td>
										<td colspan="2" align=center style="font-size: 9px"><b>'.$Actionstatus[$i].'</b><br>'.substr($Approuveddate[$i],0,10).'</td></tr>';								
								}
							$fiahtml2.='</table

7

tu pourrais donner le code HTML généré ? car là, ce n'est pas le cas et je ne peux donc pas analiser d'où pourrait venir le pb....
Ancien pseudo : lolo

8

voila le code complet:
tromb Fichier joint : FIA293.html

9

<table width="100%" border="2" cellpadding="1" align="center" cellspacing="0" >

width="..." n'admet qu'une valeur en pixel, sans précision de l'unité. pas de pourcentage (selon le W3C).

Il vaut vraiment mieux tout passer dans style="..." ce qui peut l'être

de plus, tu as parfois 6, et parfois 7 colonnes dans tes TR, compte tes TD et colspan...

enfin, comme je l'ai marqué à plusieurs reprises dans ce forum, il faut préciser les largeurs de TOUS les éléments d'un tableau (donc tous les TD pour toutes les lignes. le mieux étant de passé par une feuille de style)

voilou, avec ca, ca devrait marcher

exemple rapide qui marche :

	<table style="width:100%" border="2" cellpadding="1"  align="center" cellspacing="0" >
		<tr>
			<td colspan="2" ><b>Analysis and Actions to correct and prevent</b></td>
			<td colspan="2"></td>                          
			<td colspan="2"></td>                        
		</tr>
		<tr>
			<td align=center	style="width: 20%"><b>Causes: </b></td>
			<td align=left		style="width: 40%"><b>Actions:</b></td>
			<td align=center	style="width: 10%"><b>Type / Level: </b></td>
			<td align=center	style="width: 10%"><b>Responsible:</b></td>
			<td align=center	style="width: 10%"><b>Due Date / Done Date:</b></td>
			<td align=center	style="width: 10%"><b>State : </b></td>
		</tr>
		<tr>
			<td align=left		style="width: 20%; font-size: 8px">Les pinces glissent des fourches</td>
			<td align=left		style="width: 40%; font-size: 8px">Obtenir l\'agrément de  conformité du fabriquantObtenir l\'agrément de  conformité du fabriquantObtenir l\'agrément de  conformité du fabriquantObtenir l\'agrément de  conformité du fabriquant</td>
			<td align=center	style="width: 10%">Corrective<br>0</td>
			<td align=left		style="width: 10%">xxxxxxxxxxxx</td>
			<td align=center	style="width: 10%; font-size: 8px">2009-03-31 / 2008-12-23</td>
			<td align=left		style="width: 10%; font-size: 9px"><b>Planed</b><br></td>
		</tr>
	</table> 
Ancien pseudo : lolo

10

Merci Spipu je vais essayé ca je te tiens au courant...
C'est un peu lourd, les CSS ca simplifie bcp pour les largeurs???

Bon bah c mieux, mais ca depasse toujours... confus fou

je vais reverifier tte les balises..
++

11

ben tu fais un style par colonne, que tu appelles col1, col2, col3 puis tu fais juste <td class="col1"> ... ca sera moins lourd pour la génération html
Ancien pseudo : lolo

12

tromb Fichier joint : FIA348.html
tromb Fichier joint : FIA348.pdf

Bon je comprends pas ce qui ce passe...
Mon fichier html est valide (d'aprés html validator), mais le pdf reste blanc!
Est ce que cela vient des styles??

13

quand tu développes, je te conseille fortement d'activer l'affichage des erreurs PHP, car tu aurais vu ainsi les erreurs suivantes :
PHP Notice:  Undefined offset:  6 in html2pdf_v3.xx\html2pdf.class.php on line 3331
PHP Notice:  Undefined offset:  6 in html2pdf_v3.xx\html2pdf.class.php on line 3331
PHP Notice:  Undefined offset:  6 in html2pdf_v3.xx\html2pdf.class.php on line 3355
PHP Notice:  Undefined offset:  6 in html2pdf_v3.xx\html2pdf.class.php on line 3355


cela vient d'un problème de nombre de colonnes non identiques entre les différentes lignes d'un même tableau... vérifie bien, t'as un colspan quelque part qui doit être mal calculé sur un tableau à 6 colonnes !

un petit truc comme ca : html validator vérifie si le code n'a pas d'erreur, mais il ne vérifie pas si le code est logique...
Ancien pseudo : lolo

14

bizarre, je pensais avoir les erreurs php activés... je vais verifier ca..
sinon j'ai diminué mon html avec ca:
<table>
<tr>
<td align="left">Lieu:</td>
<td><strong>AtelierC</strong></td>
</tr>
</table>
et le pdf fournit, n'est toujours pas valide sad
doit y'avoir un probleme ailleurs non?

15

pour moi c'est ton colspan=2 de cette ligne qui pose pb :
<td colspan="2" align=center style="font-size: 9px; width: 10%"><b>Attente</b><br>0000-00-00</td></tr></table>
Ancien pseudo : lolo