FPDF - Affichage sous condition - PHP - Programmation
Marsh Posté le 07-07-2010 à 00:12:28
d'où vient ton tableau $data ? 
Si c'est d'un mysql_fetch_rows, utilise plutot mysql_fetch_assoc 
 
A mon avis, le problème ne vient pas de ce code, mais de celui en amont, qui crée ton tableau $data. 
Il faut le traiter en avance pour uniformiser la notation. 
 
Ou bien tu développes un peu ta condition : 
| Code : 
 | 
Marsh Posté le 07-07-2010 à 22:43:35
Marche pas. 
Comme je le disais remplacer 0 par 0.00 ne donne rien dans le if. 
Dommage. Quant à trouver où est créé le tableau $data dans les 1000 répertoires de Joomla :-) 
Merci quand même. 
Bonne soirée
Marsh Posté le 08-07-2010 à 01:53:05
essaye de convertir la variable en entier avant de faire le test pour que ça soit toujours 0. 
 
    if((int)$data['0']['charges']) 
     { 
      $pdf->Cell(70,4,utf8_decode('Charges copropriété : '.$data['0']['charges'].chr(128)),0,1); 
     } 
     else 
     { 
      //rien 
     }
Marsh Posté le 06-07-2010 à 20:57:22
Bonsoir à tous,
j'ai un ptit bug que je n'arrive pas à résoudre :
Dans mon fichier export_pdf.php dans lequel j'utiliser la fonction fpdf (pour impression de fiche immo en pdf), je souhaite afficher dans le pdf les champs uniquement si la valeur n'est pas 0 (pour éviter de l'alourdir inutilement).
Le problème c'est que les types de champs numériques sont assez variables. Un coup dans le formulaire de saisie j'ai des valeurs à 0.00 par défaut, un coup j'ai bien 0.
Donc ma ligne de code suivante :
if($data['0']['bedRooms'])
{
$pdf->Cell(70,4,utf8_decode('Nombre de chambres : ').($data['0']['bedRooms']?$data['0']['bedRooms']:'n.c.'),0,1);
}
else
{
fonctionne nickel.
Mais celle-ci
if($data['0']['charges'])
{
$pdf->Cell(70,4,utf8_decode('Charges copropriété : '.$data['0']['charges'].chr(128)),0,1);
}
else
{
//rien
}
ne fonctionne pas car la valeur nulle par défaut de "charges" est 0.00
J'espère que c'est assez clair.
Savez-vous comment modifier cette dernière ligne de code pour que ça fonctionne svp?
Il me semble avoir essayé en remplaçant if($data['0']['charges']) par if($data['0.00']['charges']) mais pas mieux (carrément plus rien quelque soit la valeur je crois).
Merci d'avance pour votre aide.
Message édité par kameha le 06-07-2010 à 21:22:41