Bonjour
j'ai une base de données qui est encodé en utf8 et j'ai besoin de générer des pdf
Pour faire les pdf j'utilise fpdf avec un scripte récupéré sur le site fpdf que j'ai adapté à mon cas.

Mon soucis c'est que les caractères accentué ne s'affichent pas correctement.
Je sais que je dois utiliser utf8_decode mais je n'arrive pas à l'intégrer dans le code.... j'ai à peu près tout essayé
Ci dessous le code php pour collecter les données et la fonction qui réalise le tableau et y intègre les données

Si une âme charitable pouvait m'aider un peu ce serait sympa.
Merci



Le code php pour collecter les données

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
$pdf->Table($link,"select
		M.id_membre,
		M.id_class,
		M.id_civilite1,
		M.id_civilite2,
		M.id_civilite3,
		M.nom AS nom_membre,
		M.prenom,
		M.id_qualite1,
		M.id_qualite2,
		M.id_qualite3,
		M.adresse,
		M.code_p,
		M.ville,
		M.telephone,
		M.portable,
		M.email,
		M.cotisation,
 
		CONCAT(M.nom, ' ', M.prenom) AS membre,
 
		C.id_class,	
		C.class,
 
		T.id_civilite1,
		T.civilite1,
 
		TT.id_civilite2,
		TT.civilite2,
 
		TTT.id_civilite3,
		TTT.civilite3,
 
		Q.id_qualite1,
		Q.qualite1,
 
		QQ.id_qualite2,
		QQ.qualite2,
 
		QQQ.id_qualite3,
		QQQ.qualite3,
 
		R.id,
		R.id_membre,
		R.id_manif_liste,
		R.oui_non,
 
		ML.id,
		ML.nom_base,
		ML.nom AS nom_manif
 
		FROM membre M
		left JOIN tbl_class C ON M.id_class=C.id_class 
		left JOIN tbl_civilite1 T ON M.id_civilite1=T.id_civilite1
		left JOIN tbl_civilite2 TT ON M.id_civilite2=TT.id_civilite2 
		left JOIN tbl_civilite3 TTT ON M.id_civilite3=TTT.id_civilite3 
		left JOIN tbl_qualite1 Q ON M.id_qualite1=Q.id_qualite1
		left JOIN tbl_qualite2 QQ ON M.id_qualite2=QQ.id_qualite2 
		left JOIN tbl_qualite3 QQQ ON M.id_qualite3=QQQ.id_qualite3
		left JOIN manif_liste_reponse R ON M.id_membre = R.id_membre
		left JOIN manif_liste ML ON R.id_manif_liste = ML.id
		WHERE $filtre
		order by ML.nom, M.nom, R.oui_non desc"
		,$prop
	);

La fonction qui réalise le tableau et mise en page
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
function Table($link, $query, $prop=array())	
	{		
		// Execute query
		$res=mysqli_query($link,$query) or die('Error: '.mysqli_error($link)."<br>Query: $query");
 
		// Ajouter toutes les colonnes si aucune n'a été spécifiée
		if(count($this->aCols)==0)
		{
			$nb=mysqli_num_fields($res);
			for($i=0;$i<$nb;$i++)
				$this->AddCol();
		}
 
		// Récupérer les noms de colonnes quand non spécifié
		foreach($this->aCols as $i=>$col)
		{
			if($col['c']=='')
			{
				if(is_string($col['f']))
					$this->aCols[$i]['c']=ucfirst($col['f']);
				else
					$this->aCols[$i]['c']=ucfirst(mysqli_fetch_field_direct($res,$col['f'])->name);
			}
		}
		// Propriétées
		if(!isset($prop['width']))
			$prop['width']=0;
		if($prop['width']==0)
			$prop['width']=$this->w-$this->lMargin-$this->rMargin;
		if(!isset($prop['align']))
			$prop['align']='C';
		if(!isset($prop['padding']))
			$prop['padding']=$this->cMargin;
		$cMargin=$this->cMargin;
		$this->cMargin=$prop['padding'];
		if(!isset($prop['HeaderColor']))
			$prop['HeaderColor']=array();
		$this->HeaderColor=$prop['HeaderColor'];
		if(!isset($prop['color1']))
			$prop['color1']=array();
		if(!isset($prop['color2']))
			$prop['color2']=array();
		$this->RowColors=array($prop['color1'],$prop['color2']);
		// Calculer les largeurs de colonne
		$this->CalcWidths($prop['width'],$prop['align']);
		// Imprime entête
		$this->TableHeader();
		// Imprime les rangées
		$this->SetFont('Arial','',11);
		$this->ColorIndex=0;
		$this->ProcessingTable=true;
		// le tableau
		while($row=mysqli_fetch_array($res))
		$this->Row($row);
 
}