Probleme de facture

Résolu
msi79
Messages postés
501
Date d'inscription
lundi 24 août 2009
Statut
Membre
Dernière intervention
7 juin 2022
- 4 oct. 2014 à 20:46
jordane45
Messages postés
35771
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 juillet 2022
- 4 oct. 2014 à 22:07
Bonjour,
j'ai réalisé une facture pour un client mais je suis confronté a un réel problème.
il se trouve que lorsque les client saisi plusieurs lignes qui doivent apparaitre sur la facture elle ne tient plus sur un seul feuille.
je vois ce que je dois faire mais je sais pas comment m'y prendre en php.
je crois qu'il faut que l'espace vide en bas des lignes affichées doit diminuer en fonction du nombre de lignes saisies. donc peu être qu'il me faut limiter le nombre de ligne sue la facture. je sais pas si je me fait bien comprendre .

exemple si je limite le nombre total de ligne sur la facture a 15. si le nombre de ligne affichée est 10 celui du vide doit être automatiquement 5.

mon code :
<table width="367" border="0">
<tr>
<td>N°</td>
<td>DESIGNATION</td>
<td>QTE</td>
<td>P.U</td>
</tr>
<?php
while ($liste=mysql_fetch_assoc($req)) {
?>
<!-- ici pour afficher les enregistrements -->
<tr>
<td><?php echo $liste["num"]; ?></td>
<td><?php echo $liste["desgn"]; ?></td>
<td><?php echo $liste["qte"]; ?></td>
<td><?php echo $liste["pu"]; ?></td>
</tr>
<?php
}
?>
<!-- ici pour afficher la partie vide -->
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>

3 réponses

jordane45
Messages postés
35771
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 juillet 2022
358
4 oct. 2014 à 21:21
Salut msi
Je n'ai rien compris à ta question. ..

Tu parles de taille... de feuille...
Mais je ne vois aucun CSS dans ton code pour gerer par exemple la hauteur des tr de ton tableau. ..
0
msi79
Messages postés
501
Date d'inscription
lundi 24 août 2009
Statut
Membre
Dernière intervention
7 juin 2022
1
4 oct. 2014 à 21:39
je crois que j'ai eu un début de solution qui peu être va vous permettre de comprendre ce que je veux afin de m'aider à parfaire mon code.
<?php
$n = mysql_num_rows($req);
echo $n;
while ($liste=mysql_fetch_assoc($req)) {
$largeur_ligne = 20;
$larg_espace_vide = 260 - 20*$n;
if($larg_espace_vide <=0){
$msg = 'desolé trop de lignes';
echo '<script>alert(\' '.$msg.' \');</script>';
}
?>
<!-- ici pour afficher les enregistrements -->
<tr style="border: 1px solid black;height:20px ">
<td bgcolor="#FFFFFF" style=";border: 1px solid black;" ><?php echo $liste['articleRef'] ?></td>
<td bgcolor="#FFFFFF" style=";border: 1px solid black;"><?php echo $liste['articleVendu'] ?></td>
<td bgcolor="#FFFFFF" align="center" style=";border: 1px solid black;"><?php echo $liste['articleQuant'] ?></td>
<td bgcolor="#FFFFFF" align="center" style=";border: 1px solid black;"><?php $pu = $liste['articlePU'] * 1000/1075; $pouPU = number_format($pu, 0, ',', ' '); echo $pouPU;?></td>
</tr>
<?php
}
?>
<!-- ici pour afficher la partie vide -->
<tr style="height:<?php echo $larg_espace_vide; ?>px">
<td style="border: 1px solid black;"> </td>
<td style="border: 1px solid black;"> </td>
<td style="border: 1px solid black;"> </td>
<td style="border: 1px solid black;"> </td>
</tr>
</table>
0
jordane45
Messages postés
35771
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 juillet 2022
358
4 oct. 2014 à 21:48
0
msi79
Messages postés
501
Date d'inscription
lundi 24 août 2009
Statut
Membre
Dernière intervention
7 juin 2022
1
4 oct. 2014 à 22:03
merci pour le lien j'ai lu mais j'ai pas pu en tirer grand chose.
mais ce que jai fais marche bien mais le nombre de ligne a afficher est fixé a 13 or le client peut avoir par exemple 20lignes qui tiendront pas sur la facture. comment je gere cela
0
jordane45
Messages postés
35771
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 juillet 2022
358
4 oct. 2014 à 22:07
Il faudrait vraiment que tu expliques
Plus clairement ce que tu veux. ...mais si ton utilisateur à plus de 20 lignes...
il faut que tu ajoutes une page..

0