1

Bonsoir,
Bonne et heureuse année 2013!
J'essaie d'utiliser html2pdf pour générer des fichiers pdf mais suis confonté au problème ci-après. et j'ai besoin d'aide. Merci

Notice: Undefined offset: 23 in C:\wamp\www\SIGPS_E\html2pdf\_class\parsingHtml.class.php on line 204;
Notice: Undefined offset: 49 in C:\wamp\www\SIGPS_E\html2pdf\_class\parsingHtml.class.php on line 204;
Notice: Undefined offset: 63 in C:\wamp\www\SIGPS_E\html2pdf\_class\parsingHtml.class.php on line 204;
Notice: Undefined offset: 80 in C:\wamp\www\SIGPS_E\html2pdf\_class\parsingHtml.class.php on line 204;
Notice: Undefined offset: 157 in C:\wamp\www\SIGPS_E\html2pdf\_class\parsingHtml.class.php on line 204

Fichier : C:\wamp\www\SIGPS_E\html2pdf\html2pdf.class.php
Ligne : 1319

Impossible de charger l'image

voici mon code html :
[code]
<page style="font-size: 10pt">
<table width="65" class="tableau lien" style="margin-left:900px; padding:5px">
<tr>
<td width="23" align="center"><img src ="../images/print.png" width title="Imprimer" "18" height ="22" onClick="window.print()">
</td>
<td width="30" align="center"><a href="../menu.php?page=salaire"><img title="Quitter" border="none" src="../images/quitter.jpg" width="24" height="22"></a>
</td>

</tr>
</table><BR>
<!... bloc infos entreprise ..!>
<table width="78%" bgcolor="#FFFFFF" align="center" >
<tr>
<td width="91" align="center"><img src="<?php echo '../logo/'.$logo?>" alt="Logo de l'entreprise" width="<?php echo $nwid?>" height="<?php echo $nheig?>">
</td>
<td width="645" align="center" valign="middle"><b><?php echo '<span style="font-size:25px">'.$nom_soc.'</span><br>'.$bp.' Téléphone: '.$tel?></b>
</td>

</tr>
</table>
<!... bloc titre ..!>
<table width="78%" align="center" border="0" bgcolor="#FFFFFF">
<tr>
<td class="titretableau" bgcolor="#66FFFF" style="color:#FFF; font-family:Tahoma, Geneva, sans-serif; text-align:center; font-size:20px; font-weight:800">BULLETIN DE PAIE
</td>
</tr>
</table>
<!... bloc période ..!>
<table width="78%" class = "tableau" align ="center" style="line-height:20px">
<tr>
<td width="791" height="30" colspan="2" align="center"><b>MOIS : <?php switch ($mois) {
case "01" : echo "Janvier"; break;
case "02" : echo "Février"; break;
case "03" : echo "Mars"; break;
case "04" : echo "Avril"; break;
case "05" : echo "Mai"; break;
case "06" : echo "Juin"; break;
case "07" : echo "Juillet"; break;
case "08" : echo "Août"; break;
case "09" : echo "Septembre"; break;
case "10" : echo "Octobre"; break;
case "11" : echo "Novembre"; break;
case "12" : echo "Décembre"; break;
} echo' '.$annee?></b>
</td>

</tr>
</table>
<!... bloc infos employé ..!>
<table width="78%" class = "tableau" align ="center" style=" font-size:13px;line-height:25px">
<tr>
<td width="278" style="padding-left:5px">Matricule : <?php echo ' '.$matricule ?>
</td>
</tr>
<tr>
<td width="278" style="padding-left:5px">Titre : <?php echo ' '.$titre ?></td>
<td colspan="4">Nom et Prénom (s): <b><?php echo ' '.$nom.' '.$prenom ?></b></td>
</tr>
<tr>
<td width="278" style="padding-left:5px">N° CNSS : <?php echo ' '.$num_cnss ?></td>
<td colspan="4">Situation matrimoniale : <?php echo ' '. $situation ?></td>
</tr>
<tr>
<td width="278" style="padding-left:5px">Type Agent: <?php echo $type ?></td>
<td colspan="4">Nombre de charges fiscales : <?php echo ' '.$charge ?></td>
</tr>
<tr>
<td style="padding-left:5px">Emploi : <?php echo ' '.$emploi ?></td>
<td width="98" >Catégorie : <?php echo ' '.$categorie ?></td>
<td width="91" style="padding-left:5px">Echelle : <?php echo ' '.$echelle ?></td>
<td width="90" style="padding-left:5px">Echelon : <?php echo ' '.$echelon ?></td>
<td width="148" style="padding-left:5px">Indice : <?php echo ' '.$indice ?></td>
</tr>

</table>
<!... bloc éléments de paie ..!>
<table style="font-size:13px" width="78%" height="263" align ="center" class = "tableau">
<tr style="font-weight:bold" class="titretableau" align="center">
<td width="103" align = "center" class="titretableau_2" >Code élément</td>
<td colspan="2" align = "center" class="titretableau_2" >Éléments de paie</td>
<td width="165" align = "center" class="titretableau_2" >Avoirs</td>
<td width="181" align = "center" class="titretableau_2" >Retenues</td>
</tr>
<?php
while ($result = mysql_fetch_array($elt_pos))
{
echo
'<tr>
<td style="padding-left:10px" align="center" >'.$result['code'].'</td>
<td style="padding-left:10px" colspan="2" >'.$result['nom_element'].'</td>
<td style="padding-right:60px" align = "right">'.number_format($result['montant'],0,''," "); echo '</td>';
echo '<td style="padding-right:60px" align = "right"> </td>
</tr>';
}
?>
<tr>
<td style="padding-left:10px" align="center"><?php echo $code_iuts?></td>
<td style="padding-left:10px" colspan="2">Retenue IUTS</td>
<td style="padding-right:60px" align = "right"> </td>
<td style="padding-right:60px" align = "right"><?php echo number_format($iuts,0,''," ");?></td>
</tr>
<tr>
<td style="padding-left:10px" align="center"><?php echo $code_cnss?></td>
<td style="padding-left:10px" colspan="2">Retenue CNSS</td>
<td style="padding-right:60px" align = "right"> </td>
<td style="padding-right:60px" align = "right"><?php echo number_format($res_c['montant'],0,''," ");?></td>
</tr>
<?php
while ($resultat = mysql_fetch_array($elt_retenue))
{
echo
'<tr>
<td style="padding-left:10px" align="center" >'.$resultat['code'].'</td>
<td style="padding-left:10px" colspan="2" >'.$resultat['nom_element'].'</td>
<td style="padding-right:60px" align = "right"> </td>
<td style="padding-right:60px" align = "right">'.number_format($resultat['montant'],0,''," "); echo '</td>
</tr>';
}
?>
<tr style="font-weight:bold" align="center">
<td align = "center" class="titretableau_2" >Mode Paiement</td>
<td width="94" align = "center" class="titretableau_2" >N° Compte</td>
<td width="165" align = "center" class="titretableau_2" >Salaire brut</td>
<td align = "center" class="titretableau_2" >Base imposable</td>
<td align = "center" class="titretableau_2">Total des retenues</td>
</tr>
<tr align="center">
<td style="padding-left:10px; font-size:12px" align="center" ><?php echo $mode.'<br>'; if($mode=="Virement bancaire") echo $banque;?></td>
<td style=" font-size:12px;padding-left:10px" align="center" ><?php if($mode=="Virement bancaire") echo $num_compte;?></td>
<td style="font-size:12px" align = "center" class="tableau "><?php echo number_format($avoir,0,''," ")?></td>
<td style="font-size:12px" align = "center" class="tableau " ><?php echo number_format($baseiuts,0,''," ")?></td>
<td style="font-size:12px" align = "center" class="tableau " ><?php echo number_format($retenue,0,''," ")?></td>
</tr>
<tr style="font-weight:bold" align="center">
<td align = "center" ></td>
<td align = "center" ></td>
<td align = "center" ></td>
<td colspan="2" align = "center" class="titretableau_2" >Net à Payer</td>
</tr>
<tr style="font-weight:bold" align="center">
<td align = "center" ></td>
<td align = "center" ></td>
<td align = "center" ></td>
<td colspan="2" style="font-size:12px" align = "center" class="tableau "><?php echo number_format($net,0,''," ")?></td>
</tr>
<tr >
<td> </td>
<td> </td>
<td> </td>
<td colspan="2" style="padding-top:10px"height="93" align="center" valign="top"><b> Le Comptable</b><br><br><br><br><b><u><?php echo $comptable?></u></b></td>
</tr>
</table>
</page>
[/code]

et le code php :
[code]
<?php
/**
* HTML2PDF Librairy - example
*
* HTML => PDF convertor
* distributed under the LGPL License
*
* @author Laurent MINGUET <webmaster@html2pdf.fr>
*
* isset($_GET['vuehtml']) is not mandatory
* it allow to display the result in the HTML format
*/

// get the HTML
ob_start();
include(dirname(__FILE__).'/bulletin_old.php');
$content = ob_get_clean();

// convert in PDF
require_once(dirname(__FILE__).'/../html2pdf/html2pdf.class.php');
try
{
$html2pdf = new HTML2PDF('P', 'A4', 'fr', true, 'UTF-8', array(15, 5, 15, 5));
$html2pdf->pdf->SetDisplayMode('fullpage');
$html2pdf->writeHTML($content, isset($_GET['vuehtml']));
$html2pdf->Output('exemple02.pdf');
}
catch(HTML2PDF_exception $e) {
echo $e;
exit;
}
[/code]
smile

2

Personne n'a la solution à mon angoisse?!

3

Je ne coonais pas html2pdf, (je parcours le forum pour le découvrir) mais j'ai deux hypothèses

1 ce genre de message indique que les images ne sont pas trouvables; vérifie tes chemins en premier lieu, tus as des chemins relatifs, donc à tous les coups ton script ne s'exécute pas là ou tu le crois. Moi je mettrais des chemins absolus;

2 Si ce n'est pas ça, le format image n'est pas reconnus .... ?

4

Rien de tout cela, ce sont des notification retournées par Apache car dans le fichier C:\wamp\www\SIGPS_E\html2pdf\_class\parsingHtml.class.php dans la méthode parse() :

A la ligne 200 il y a une boucle qui est définie sur un tableau.
Dans cette boucle il y a des conditions sur l'élément encours récupéré avec l'indice de la boucle décrémenté de 1 afin de récupérer le nom de l'élément du tableau parcouru.
Ce genre de notification arrive lorsque l'on se trouve en dehors du tableau (avant ou après) car l'interpréteur PHP n'arrive pas à retrouver ses petits.

C'est un "lil-bug" pour moi car sans incidence sur le bon fonctionnement du code. Ce genre de chose arrive souvent en PHP.

Ce que tu peux faire c'est désactiver les NOTICES dans ton php.ini comme ça tu ne seras plus ennuyé.
Souvent on a des NOTICES lorsqu'une variable n'est pas déclarée au préalable ou qu'on tombe sur une erreur du genre ARRAY BOUND OF EXCEPTION (rencontré dans des langages comme le C/C++ ou ARRAY POINTER NULL EXCEPTION en JAVA (je ne me souvient plus des termes exacts mais ça s'en rapproche.)

En revanche si tu as des "WARNING" ou "ERROR" alors LÀ tu peux angoisser et tenter de trouver l'erreur qui pourrait venir de ton code ou faire une remonté au gentil concepteur de cette merveilleuse lib qu'est HTML2PDF si l'erreur vient de la lib

didiergm (./3) :
Je ne coonais pas html2pdf, (je parcours le forum pour le découvrir) mais j'ai deux hypothèses

1 ce genre de message indique que les images ne sont pas trouvables; vérifie tes chemins en premier lieu, tus as des chemins relatifs, donc à tous les coups ton script ne s'exécute pas là ou tu le crois. Moi je mettrais des chemins absolus;

2 Si ce n'est pas ça, le format image n'est pas reconnus .... ?

didiergm ^^ si tu avais bien lu les erreurs et le bout de code concerné tu aurais sans doute répondu comme moi au lieu de l'enduire d'erreur. grin