1

Je crois que tout est dans le titre.
Quand je regarde le source html, je ne vois rien de spécial.
Les balises sont toutes complètes, la syntaxe est nickel (w3c)
Alors je nage..
Merci ppour un petit coup de main

2

par "td qui ne tient pas sur une page", tu veux dire que c'est ce que te dis HTML2PDF comme erreur ?

si oui, ce n'est pas que ton code est invalide, mais qu'un des TD est trop grand et que HTML2PDF n'arrive pas à le faire rentrer dans une seule page... C'est comme excel : il ne sait pas découper un TD pour le répartir sur plusieurs pages
Ancien pseudo : lolo

3

Merci Spipu,
comme je ne peux savoir ce que c'est qu'un td TROP grand, je me permets de le joindre ci-dessous:

<td class="grande_cellule"><div class='conditions_titre'> ATTENTION N´ACHETEZ PAS CE BILLET À UN INCONNU, VOUS N´AURIEZ AUCUNE
GARANTIE QUANT À SA VALIDITÉ</div>
<p class='texte'><br />
NOUS VOUS INVITONS A PRENDRE CONNAISSANCE DES CONDITIONS D´UTILISATION CI-DESSOUS ÉNONCÉES. EN CAS DE NON RESPECT,CE BILLET
SERA NON VALABLE.</p>
<div class='conditions_texte'><br />
Outre les conditions générales de vente exposées lors de la prise de commande ou disponibles auprès de l'agence
émettrice, les conditions particulières qui suivent sont spécifiques au billet électronique(billet imprimable à
domicile).
<br />
1. Le billet électronique,<strong> pour être valide, doit être imprimé (imprimante jet d´encre ou laser) sur du papier
A4 blanc, vierge recto verso, sans modification de la taille d´impression et en format portrait.</strong> Tout support électronique
(ordinateur, téléphone,...) sera refusé. A chaque place achetée correspond un billet. Les billets doivent disposer
d´une bonne qualité d´impression. Les billets partiellement imprimés, souillés, endommagés ou illisibles ne
seront pas acceptés ; ils seront considérés, de fait, comme non valables.
<br />
2. Le billet électronique (ou E-Ticket) est pourvu d´un code barre unique. La validité du billet est contrôlée
et l´accès au site enregistré à l´aide de lecteurs de code barre. Un même billet n´accèdera
au site qu´ <strong>une fois et une seule</strong>. La reproduction de billet, de fait, ne procure aucun avantage dès lors que seul
le premier détenteur de billet électronique est admis sur le site. Ce dernier est<strong> présumé être le porteur
légitime du billet</strong>. D´où l´interdiction de le reproduire, le dupliquer, le contrefaire d'une quelconque manière,
ou de le mettre à disposition d´autrui à de telles fins.<br />
3. Veuillez respecter l´entrée précisée sur votre billet pour l´accès au site.L´acheteur est seul
responsable de l´utilisation qui est faite de son billet électronique. Une pièce d´identité pourra lui être
demandée lors de l´accès au lieu de représentation. Néanmoins l'organisateur n´est tenu ni de procéder
systématiquement à de telles vérifications, ni non plus de juger de l´authenticité du billet électronique
dans la mesure où l´imitation ou la copie ne peut être identifiée de manière indubitable en tant que telle lors du
contrôle d´accès.<br />
Si le détenteur d´un billet imprimable à domicile est refoulé pour l´une des raisons invoquées ci-dessus, <b>il ne
dispose d´aucun recours, aucun droit à remboursement du prix acquitté.</b><br />
4. L´acheteur est tenu de conserver son billet électronique pendant toute la durée de sa présence sur le lieu de
l´événement.</div></td>


4

un TD trop grand est un TD dont la hauteur est supérieur à la hauteur de la page moins les marges.

cela arrive soit quand le contenu du TD est vraiment trop important (mais apparemment ce n'est pas ton cas, ton contenu a l'air normal), soit quand la largeur du TD a mal été spécifiée, et du coup celle ci est tellement petite qu'il y a trop de retours à la ligne => le contenu prend alors trop de place en hauteur et ne tient plus sur une seule page

je pense que dans ton cas ca doit être la deuxieme solution. essaye de spécifier la largeur de ton TD
Ancien pseudo : lolo

5

Merci pour tes conseils,
j'ai vérifié la taille des td par rapport à la table et la page, tout semble ok.
Chacun des 2 td fait 50% de la tr, les 2 ensemble sont moins larges que la div qui contient la table.
Je continue à chercher, mais je ne vois pas encore où.

6

peux-tu poster ici l'ensemble de ton code HTML ainsi que des styles css ?

(utilise pour cela la balise phpBB [ PRE ] [ /PRE ]
Ancien pseudo : lolo

7

[PRE]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>F&ecirc;te du Lac - Billetterie en Ligne</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<style type='text/css' media='print'>
<!--
div.bvLien {
display: none
}
-->
</style>
<link href='BV.css' rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
div.conditions_texte { font-size:7pt }
div.conditions_texte2 { font-size:7pt }
-->
</style>
</head>
<body>
<div class='bvLien'> $_retour$
$_printBV$ </div>
<div class='infoBV'>
<table class="billet_table" border="1 solid black">
<tr>
<td class="grande_cellule"><table class="commande_details">
<tr>
<td rowspan="3" class="codebarre_vertical"><img src='$fsn$/orion/site/codeCB.php?motCB=$ref$&amp;v=1' width="25px" height="245px" alt="code barre" /> </td>
<td colspan="2" class="billetnum"><p class="texte">&nbsp;</p>
<p class="texte">$tpn$</p>
<p class="texte">&nbsp;</p>
<p class="texte">&nbsp;</p>
<p class="texte">1 PLACE </p>
<p class="texte">&nbsp;</p>
<p class="texte">$Tarif$</p>
<p class="texte Style1">$prix$</p>
<p class="texte Style1">&nbsp;</p></td>
</tr>
<tr>
<td class="billetporte"><p class="texte Style1">$placetxt$</p>
<p class="numplace Style1">$nomPlace$</p></td>
<td class="billetpla"><p class="texte Style1">$accestxt$</p>
<p class="numplace Style1">$entree$</p></td>
</tr>
<tr>
<td colspan="3" class="placement"><p class="spectacle">$libGroupe$</p>
<p class="texte Style1">$placelib$</p></td>
</tr>
<tr>
<td colspan="3" class="spectacle_details" align="center"><p class="spectacle">$nomSC$<br />
<br />
</p>
<p class="spectacle">$Jour$ $seancedu$ $dateSC$ à $heureSC$<br />
</p></td>
</tr>
<tr>
<td colspan="3" class="codebarre_horizontal"><p><img src='$fsn$/orion/site/codeCB.php?motCB=$ref$' width="255px" height="25px" alt="code barre" /><br />
<span class="codebarreH">$refOp$</span></p></td>
</tr>
</table></td>
<td class="grande_cellule"><img src="$site$/images/$photoSC$" width="250px" height="393px" alt="spectacle" /></td>
</tr>
<tr>
<td class="grande_cellule"><div class='conditions_titre'> ATTENTION N&acute;ACHETEZ PAS CE BILLET &Agrave; UN INCONNU, VOUS N&acute;AURIEZ AUCUNE
GARANTIE QUANT &Agrave; SA VALIDIT&Eacute;</div>
<p class='texte'><br />
NOUS VOUS INVITONS A PRENDRE CONNAISSANCE DES CONDITIONS D&acute;UTILISATION CI-DESSOUS &Eacute;NONC&Eacute;ES. EN CAS DE NON RESPECT,CE BILLET
SERA NON VALABLE.</p>
<div class='conditions_texte'><br />
Outre les conditions g&eacute;n&eacute;rales de vente expos&eacute;es lors de la prise de commande ou disponibles aupr&egrave;s de l'agence
&eacute;mettrice, les conditions particuli&egrave;res qui suivent sont sp&eacute;cifiques au billet &eacute;lectronique(billet imprimable &agrave;
domicile).
<br />
1. Le billet &eacute;lectronique,<strong> pour &ecirc;tre valide, doit &ecirc;tre imprim&eacute; (imprimante jet d&acute;encre ou laser) sur du papier
A4 blanc, vierge recto verso, sans modification de la taille d&acute;impression et en format portrait.</strong> Tout support &eacute;lectronique
(ordinateur, t&eacute;l&eacute;phone,...) sera refus&eacute;. A chaque place achet&eacute;e correspond un billet. Les billets doivent disposer
d&acute;une bonne qualit&eacute; d&acute;impression. Les billets partiellement imprim&eacute;s, souill&eacute;s, endommag&eacute;s ou illisibles ne
seront pas accept&eacute;s&nbsp;; ils seront consid&eacute;r&eacute;s, de fait, comme non valables.
<br />
2. Le billet &eacute;lectronique (ou E-Ticket) est pourvu d&acute;un code barre unique. La validit&eacute; du billet est contr&ocirc;l&eacute;e
et l&acute;acc&egrave;s au site&nbsp;enregistr&eacute; &agrave; l&acute;aide de lecteurs de code barre. Un m&ecirc;me billet n&acute;acc&egrave;dera
au site qu&acute; <strong>une fois et une seule</strong>. La reproduction de billet, de fait, ne procure aucun avantage d&egrave;s lors que seul
le premier d&eacute;tenteur de billet &eacute;lectronique est admis sur le site. Ce dernier est<strong> pr&eacute;sum&eacute; &ecirc;tre le porteur
l&eacute;gitime du billet</strong>. D&acute;o&ugrave; l&acute;interdiction de le reproduire, le dupliquer, le contrefaire d'une quelconque mani&egrave;re,
ou de le mettre &agrave; disposition d&acute;autrui &agrave; de telles fins.<br />
3. Veuillez respecter l&acute;entr&eacute;e pr&eacute;cis&eacute;e sur votre billet pour l&acute;acc&egrave;s au site.L&acute;acheteur est seul
responsable de l&acute;utilisation qui est faite de son billet &eacute;lectronique. Une pi&egrave;ce d&acute;identit&eacute; pourra lui &ecirc;tre
demand&eacute;e lors de l&acute;acc&egrave;s au lieu de repr&eacute;sentation. N&eacute;anmoins l'organisateur n&acute;est tenu ni de proc&eacute;der
syst&eacute;matiquement &agrave; de telles v&eacute;rifications, ni non plus de juger de l&acute;authenticit&eacute; du billet &eacute;lectronique
dans la mesure o&ugrave; l&acute;imitation ou la copie ne peut &ecirc;tre identifi&eacute;e de mani&egrave;re indubitable en tant que telle lors du
contr&ocirc;le d&acute;acc&egrave;s.<br />
Si le d&eacute;tenteur d&acute;un billet imprimable &agrave; domicile est refoul&eacute; pour l&acute;une des raisons invoqu&eacute;es ci-dessus, <b>il ne
dispose d&acute;aucun recours, aucun droit &agrave; remboursement du prix acquitt&eacute;.</b><br />
4. L&acute;acheteur est tenu de conserver son billet &eacute;lectronique pendant toute la dur&eacute;e de sa pr&eacute;sence sur le lieu de
l&acute;&eacute;v&eacute;nement.</div></td>
<td class="grande_cellule"><p class='texte'>VALIDIT&Eacute; DES BILLETS</p>
<div class='conditions_texte'>
Les billets sont valables le samedi 8 août 2009.<br />
Ce billet ne peut &ecirc;tre ni &eacute;chang&eacute; , ni rembours&eacute;(sauf conditions ci-dessous).<br />
En cas d&acute; interruption du spectacle du fait de l&acute;organisateur: si l&acute; interruption intervient pendant les 65 premi&egrave;res minutes
du spectacle, le remboursement sera effectu&eacute; &agrave; hauteur de 70% de la valeur d&acute;achat du billet. Aucun remboursement ne sera
effectu&eacute; si l&acute; interruption a lieu &agrave; partir de la 66&egrave;me minute de spectacle.<br />
En cas d&acute;annulation totale du spectacle du fait de l&acute;organisateur: si le spectacle est compl&egrave;tement annul&eacute; le billet sera
rembours&eacute; &agrave; 100% de sa valeur d&acute;achat.<br />
Quelle qu&acute;en soit la cause, le remboursement ne pourra en aucun cas d&eacute;passer la valeur d&acute;achat du billet.<br />
En cas d&acute; interruption ou d&acute;annulation, les billets sont &agrave; retourner accompagn&eacute;s d&acute;un R.I.B. avant le lundi 31
ao&ucirc;t 2009 &agrave;:<br />
Mairie .<br />
En cas d&acute;annulation du spectacle, aucun report n&acute;est pr&eacute;vu.<br /></div>
<p class='texte'><br />
CONSIGNES DE S&Eacute;CURIT&Eacute;</p>
<p class='securite'>
<img src="$site$/images/securite.jpg" width="115px" height="50px" alt="s&eacute;curit&eacute;" /></p>
<p class='texte'><br />
INFORMATIONS PRATIQUES</p>
<div class='conditions_texte'>
- ouverte du lundi 6 juillet au samedi
8 ao&ucirc;t 2009. Du lundi au samedi, de 10h à 18h. Ouverte le dimanche 2 ao&ucirc;t. Ferm&eacute;e le mardi 14 juillet.<br />
- Un parking gratuit suppl&eacute;mentaire est mis &agrave; la disposition des personnes munies d&acute;un billet sur le
site de l&acute;ancien h&ocirc;pital, avenue de Tr&eacute;sum(voir plan).<br />
- La ville se r&eacute;serve le droit de modifier l&acute;heure, l&acute;ordre et la dur&eacute;e du spectacle.<br />
- Le spectacle commence &agrave; l&acute;heure pr&eacute;cise. Apr&egrave;s le d&eacute;but du spectacle, les places num&eacute;rot&eacute;es ne sont
plus garanties. Les retardataires seront plac&eacute;s en fonction de l&acute;accessibilit&eacute;.<br />
- Sur les places num&eacute;rot&eacute;es : les enfants de moins de 4 ans doivent obligatoirement &ecirc;tre assis sur les genoux d&acute;un adulte et
ne pas occuper de place assise. Ils doivent &ecirc;tre munis d&acute;une &quot;contremarque&quot; d&eacute;livr&eacute;e au moment de l&acute;achat de(s)
billet(s) pour adultes.</div></td>
</tr>
<tr>
<td colspan="2" class="coupon_detachable"><p align="center"><img src='$fsn$/orion/site/codeCB.php?motCB=$ref$' height='40px' width='255px' alt="code barre" />&nbsp;</p>
<p>&nbsp;$refOp$ - $tpn$</p></td>
</tr>
</table>
</div>
</body>
</html>
[/pre]
/* ---------------------- BODY, GENERIQUE ---------------------- */
body {  
	margin-top:0px;
        margin-left:5px;
	font-family:arial;
	color: #000000;
	background-color: #FFFFFF;
       	font-size: 60%;
}
/* ---------------------- GRANDE TABLE ---------------------- */
table.billet_table {
        font-family:arial;
        margin:	auto;
	padding: 0;
	width: 680px;
	height: 900px;
	border : 0;
	border-collapse: collapse;
}
td.grande_cellule {
        margin: 0;
	padding: 0;
	width: 50%;
	height:400px;
	text-align: center;
	vertical-align: top;
    border: 1px solid #000000;
}
td.grande_cellule2 {
	margin: 0;
	padding: 0;
	width: 50%;
	height:400px;
	text-align: center;
	vertical-align: top;
	border: 1px solid #000000;
}
td.coupon_detachable{
        font-size: 9px;
        width: 650px;
        height: 80px;
	border: 1px solid #000000;
	text-align: center;
	vertical-align: top;
	padding-left: 10px;
}
div.conditions_titre {
        font-family:arial;
	font-size: 80%;
	font-weight: bold;
	text-align: center;
	border-bottom: 1px solid #000000;
}
div.conditions_texte {
	font-family:century gothic;
        padding-left:5px;
	padding-right:5px;
	font-size:65%;
	text-align: left;
}
div.conditions_texte2 {
	font-family:century gothic;
        padding-left:5px;
	padding-right:5px;
        font-size:60%;
}
div.infospratiques_titre {
	font-family:arial;
	padding-left: 5px;
	padding-right:5px;
	font-size: 80%;
	font-weight: bold;
	text-align: center;
	border-bottom: 1px solid #000000;
}
div.infospratiques_texte {
        font-family:arial;
	padding-left: 5px;
	padding-right:5px;
	font-size: 80%;
	font-weight: normal;
	text-align: left;
}
div.infospratiques_attention {
	color:red;
        font-family:arial;
	padding-left: 5px;
	padding-right:5px;
	font-size: 80%;
	font-weight: normal;
	text-align: left;
}

/* ---------------------- DETAILS DE LA COMMANDE ---------------------- */

table.commande_details {
	margin: 0;
	padding: 0;
	width: 260px;
        height: 250px;
	border : 0;
	border-collapse: collapse;
}
td.codebarre_vertical {
	margin: 0px;
	padding-top: 5px;
	width: 40px;
	height: 255px;
	text-align: center;
	vertical-align: bottom;
	padding-left: 5px;
}
td.client_specnum {
	margin: 0;
	padding: 0;
	width: 60px;
	text-align: left;
	vertical-align: top;
}
td.placement {
	width: 260px;
        height:40px;
	text-align: left;
	vertical-align: top;
	padding-left: 30px;
	font-size: 10px;
        }
td.billetnum {
	margin: 0;
	padding: 0;
	width: 260px;
        height:30px;
        text-align: left;
	vertical-align: top;
	padding-left: 30px;
	font-size: 10px;
}
td.billetpla {
	width: 130px;
        height:40px;
        text-align: left;
	vertical-align: top;
	font-size: 10px;
}
td.billetporte {
	padding-left:30px;
	width: 100px;
        height:40px;
	text-align: left;
	vertical-align: top;
	font-size: 10px;
}
td.spectacle_details {
        vertical-align: top;
        font-size: 10px;
	height: 80px;
	width: 300px;
        }
td.salle {
	height: 50px;
	vertical-align: top;
	width: 300px;
	text-align: center;
}
td.codebarre_horizontal {
        padding-left : 35px;
	height: 40px;
	text-align: center;
	width: 300px;
}
p.titrecgv {
	text-align: center;
	font-size: 12px;
	font-weight: bold;
}
p.client_nom {
	
	padding: 0;
	font-size: 10px;
	font-weight: bold;
	width: 100px;
}
p.client_vip {
	margin: 10px 0 15px 10px;
	padding: 0;
	font-size: 30px;
	font-weight: bold;
}
p.spec_numero {
	float:left;
	margin: 0 auto;
	padding: 0;
	width: 80px;
	font-size: 60px;
	font-weight: normal;
	text-align: center;
	border: 1px solid #000000;
}
p.billet_numero {
	margin: 10px 0 20px 0;
	padding: 0;
	font-size: 7px;
	font-weight: bold;
}
p.texte {
	margin: 0;
	padding: 0;
	font-size: 11px;
	font-weight: bold;
}
p.securite {
	margin: 0;
	padding: 0;
	text-align: center;
}
p.fraisloc {
	margin: 0;
	padding: 0;
	font-size: 10px;
	font-style:italic;
}
p.numplace{
	margin: 0;
	padding: 0;
	font-size: 25px;
	font-weight: bold;
}
p.spectacle {
	font-size: 16px;
	font-weight: bold;
	}
span.date {
	font-size: 13px;
	font-weight: bold;
	}
	
span.licence {
        font-size: 10px;
	text-align: center;
	font-weight: normal;
	}
span.salle {
	padding: 0;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
}
p.date_heure {
	font-size: 12px;
	font-weight: bold;
	text-align: center;
}
p.prix {
	margin: 15px 15px 15px 15px;
	padding: 0;
	font-size: 10px;
	font-weight: bold;
	text-align: center;
}
p.placement {
	font-size: 10px;
	font-weight: bold;
	text-align: center;
	width: 160px;
	border: 1px solid #000000;
}
p.numero_licence {
	margin: 0px 15px 0 15px;
	padding: 0;
	font-size: 7px;
	font-weight: normal;
	text-align: center;
}
p.coupon {
	margin-top: 10px;
	
}
span.codebarreH {
        text-align:center;
        padding-right : 45px;}

8

Les variables notées $variable$ sont filtées par un script php qui les remplace par les vraies valeurs. Sur la feuille de style, j'ai édité mon post et supprimé la variable $site$/ qui empêche de trouver le bon chemin quand on l'affiche 'off-line'.

9

quelques petites points :

- tu as fait quelques erreurs dans le décompte de tes colspan et rowspan
- je ne vois pas du tout à quoi sert <div class='infoBV'>, il vaudrait mieux l'enlever et mettre le style directement sur le tableau que ta div contient
- width="45px" n'est pas reconnu... la norme indique bien qu'il faut mettre width="45". Beaucoup de navigateurs l'acceptent quand même, mais pas HTML2PDF. De plus, il est fortement préférable d'utiliser les styles : style="width: 45px; height: 30px"

c'est d'ailleurs peut-etre à cause de ce dernier point que ca plantait : la taille des images
Ancien pseudo : lolo

10

<mode éveil>
Bien vu pour le colspan et le rowspan!
Ce type de maquette de billet virtuel fonctionne très bien avec HTML2PDF pour d'autres sites avec des images en 'px'. Je vais quand même les retirer sur cette appli particulière.
InfoBV est une div standard pour mes applications, elle peut contenir d'autres infos et est attendue par le script qui génère le code final.
Merci pour ta patience, je sais par expérience que c'est ch... de se farcir du code qu'on n'a pas écrit, surtout.
Je repars faire mes essais.
(switch off..)
</mode éveil>

11

Voilà, j'ai nettoyé, et ça marche à moitié (c'est vraiment le cas de le dire). J'obtiens ma feuille pdf mais la partie gauche prend toute la place! et je n'ai pas la partie droite. Encore une question de taille, je suppose.
J'y retourne.
En tous acs, bravo Spipu pour ton analyse rapide.

12

pour InfoBV, c'est dommage, car pour chaque TABLE, TD, TH, et DIV, il précalcul tout. donc dans ton cas, il précalcul inutilemenet tout le contenu de la div, hors quand il précalcul la div, il précalcul d'abord tout le tableau, et quand il calcul le tableau, il précalcul chacun des TD
=> 1 précalcul de div = 1calcul de tableau + 1précalcul de tableau = n calculs + n précalculs de tds.... il fait donc 2 fois plus de travail juste pour une div qui n'est pas utile... je te conseille de voir si tu ne pourrais pas l'enlever via une regex juste avant d'envoyer ton html à html2pdf

sinon, pour voir ce qui cloche, essaye de généré ton billet en enlevant les images temporairement pour voir ce que ca donne
Ancien pseudo : lolo

13

dans un PDF, il faut vraiment préférer les tailles en MM ou en % plutot que les pourcentages... Ce n'est plus du WEB mais bien un document papier.

essaye de mettre la largeur à 100% pour tes tables au lieux de mettre des px
Ancien pseudo : lolo

14

Pour les précalculs, pas de soucis: le serveur est très musclé. J'arrive à générer des flows de 20 pages pdf selon certaines applis, et ça prend moins de 20 secondes. C'est la première appli qui me cause tant de tracas.
Ok: table, td, div avec pourcentage ou cm, le cas échéant, pour les images, plus de px. Sur l'écran, avant le lancement de HTML2PDF par le script, tout est ok, la vue avant impression est ok. Quand je 'pédèfise', je me retrouve, à nouveau, avec une demi-page gauche. Argghhhh (comme le célèbre château du même nom).
J'y retourne

15

tu peux me poster ici le contenu de la variable $content que tu envoyes à writeHTML ? avec le css ? (car tout à l'heure ce que t'avais envoyé, ca ne devait pas être le contenu de cette variable etant donné que les données étaient pas encore remplacées...

si tu ne veux pas la poster ici, envoyes la moi par mail
Ancien pseudo : lolo

16

Salut Spipu
je t'ai envoyé un email

17

bon, ben comme je l'ai dis souvent, il faut impérativement préciser les largeurs de tous les éléments TD, TH, TABLE, et DIV...

tu n'as pas mis la largeur à 100% pour ta div et ta table principal, ni à 50% pour les 2 colonnes, ni à 100% pour chacune des sous divs de chaque TD.

html2pdf n'est pas un vrai navigateur internet, il ne peut pas tout faire et déduire toutes les tailles de manière intelligente... (sinon il serait bcp plus gros et prendrait bien plus de mémoire...)
Ancien pseudo : lolo

18

OK, ça marche nickel. Désolé de t'avoir fait perdre du temps pour des choses que j'aurais dû savoir..
Je fais amende honorable

Encore merci pour ton aide

19

y a pa de quoi, bonne continuation wink
Ancien pseudo : lolo