[PHP] problème d'accent avec la classe FPDF [Résolu/Fermé]

Signaler
Messages postés
426
Date d'inscription
dimanche 31 juillet 2011
Statut
Membre
Dernière intervention
17 février 2015
-
 Doudousco -
Bonjour,

je suis entrain de réaliser une petite application intranet qui va nécessité l'impression des états. j'utilise la classe fpdf la version 1.7.
je rencontre un problème dans la gestion des erreurs.
avant d'envoyé des données ayant des caractère spéciaux dans la base de données, j'appelle la fonction utf8_encode($data), pour encoder les caractères spéciaux.
lors de l'impression avec la classe fdpf, j'utilise utf8_decode($data);
mais ça marche. pourtant quand j'affiche dans une page écrit web, les caractères sont convenablement décodées.
je ne sais plus quoi faire. merci d'avance pour vos réponses.


3 réponses

Messages postés
51
Date d'inscription
jeudi 9 janvier 2014
Statut
Membre
Dernière intervention
28 avril 2014
9
Utilisé:
$this->Cell(100,15,utf8_decode('Liste des véhicules'),0,1,'C');
11
Merci

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez Comment Ça Marche

CCM 59287 internautes nous ont dit merci ce mois-ci


Parfait merci.
Grand Merci
Merci pour cette aide qui marche à merveille chez moi
Messages postés
1405
Date d'inscription
vendredi 28 novembre 2008
Statut
Membre
Dernière intervention
18 mars 2013
77
Salut,
Peux tu nous donner un aperçu de ton code ?
Messages postés
426
Date d'inscription
dimanche 31 juillet 2011
Statut
Membre
Dernière intervention
17 février 2015
21
<?php  
/********************** 
 INCLUSION DES FICHIERS 
 ------fpdf.php contenant les fonction pdf() standard 
 ------bibliotheque_inc.php contient les fonctions usuelles et les fonctions de connexion à la bd 
*/ 
include_once("../fpdf17/fpdf.php"); 
include_once("../noyau/bibliotheque_inc.php"); 

/******************************************************************************* 
    CLASSE PDF PERMETTANT D"IMPRIMER DES FICHIER  
    PDF, CETTE CLASSE ETEND LA CLASSE FPDF 
********************************************************************************/ 

class PDF extends  FPDF{ 
 function LoadData(){ 
  $query = "SELECT * FROM membre ORDER BY IDMEMBRE"; 
  $this->SetFont("Times", '', 7); 
  $data = array(); 
  $result = mysql_query($query) or die(mysql_error()); 
  /*** 
   conserver les titres des colonnes de la bd comme etant 
   les titres des colonnes dans le fichier pdf 
   Tableau a une dimension contenant les titres 
  ***/ 
  $header = array(); 
  for($i = 0; $i < mysql_num_fields ($result); $i++)  
    $header[] = mysql_field_name($result, $i); 
  $data[0] = $header; 
  $i = 1; 
  /*** 
   ajouter les donnees renvoyees par la requette 
   a la suite de la variable $data contenant deja les titres 
   $data tableau a deux dimension contenant les titre et les jeux d'enregistrement 
  ***/ 
  while($row = mysql_fetch_row($result)){ 
   foreach($row as $val) 
    $data[$i][] = $val; 
   $i++; 
  } 
  /*** 
   Retourner le jeu d'enregistrement sous forme de tableau 
   Ce tableau d'enregistrement sera utilise par  
   la fonction Basictable($data) pour produire le resultat 
  ***/ 
  return $data; 
 } 
 function BasicTable($data){ 
  foreach($data as $row){ 
   foreach($row as $col){ 
    $this->Cell(20, 5,utf8_decode($col), 1); 
   } 
   $this->Ln(); 
  } 
  $this->Ln(5); 
  $this->Cell(0,5, "Date: Le...........", 0, 1, "R"); 
  $this->Cell(0,5, "Signature........", 0, 1, "R"); 
  $this->Ln(5); 
     // Mention en italique 
     $this->SetFont('','I'); 
     $this->Cell(0,5,"(fin de la liste)"); 
 } 
} 
$pdf = new PDF(); 
$pdf->AliasNbPages; 
$pdf->AddPage(); 
$data = $pdf->LoadData(); 
$pdf->BasicTable($data); 
$pdf->Output(); 
?> 

--
Messages postés
1405
Date d'inscription
vendredi 28 novembre 2008
Statut
Membre
Dernière intervention
18 mars 2013
77
Ta page est codé en UTF-8?
Messages postés
426
Date d'inscription
dimanche 31 juillet 2011
Statut
Membre
Dernière intervention
17 février 2015
21
où devrais-je ajouter UTF-8?c'est une page écrit en php qui imprime. alors faire de l'affichage
echo '<meta  http-equiv="Content-Type" content="text/html; charset=utf-8" />';
avant le l'impression va renvoyer une erreur.
Messages postés
1405
Date d'inscription
vendredi 28 novembre 2008
Statut
Membre
Dernière intervention
18 mars 2013
77
Essayes de mettre ca :
header('Content-Type: text/html; charset=UTF-8');
Messages postés
426
Date d'inscription
dimanche 31 juillet 2011
Statut
Membre
Dernière intervention
17 février 2015
21
cool, ça marché. encore merci pour votre aide
ça n'a pas marché chez moi svp aidez moi