Bonjour tout le monde,

J'ai lu le chapitre "Multi-colonnes" sur le site fpdf.org.

J'ai besoin d'avoir un affichage qui ressemblerait à celui-ci :

1ère colonne : code cours 2e colonne : Nom cours 3e colonne : Nom Prof 4e Colonne : Cote théorique 5e colonne : Cote pratique

Je me demande par contre, vue que je ne vais pas chercher mes données dans un fichier comme pour l'exemple du site fpdf.org mais bien dans une requête.

Est-il possible d'adapter le code à cela ?

J'ai tenté ceci (mais sans succès) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
$pdf->AjouterChapitre($pdf->Cell(30,10,$nom_des_cours['MNEMONIC'],0,'C'));
Le code de la méthode :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
function AjouterChapitre($fichier)
	{
		//Ajout du chapitre
 
		$this->CorpsChapitre($fichier);
	}
Voici l'entierté de mon code, sauriez-vous me mettre sur une piste svp ?

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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
<?php
session_start();
require('../fpdf.php');
require('../mysql_table.php'); 
//Connexion a la base
mysql_connect('localhost','root','mdp');
mysql_select_db('pharma');
 
$sql_annee = "SELECT Nom_complet FROM annees WHERE NOM_ANNEE = '".$_SESSION['choix_annee']."'";
$req_annee = mysql_query($sql_annee);
$annee = mysql_fetch_array($req_annee);
 
//$sql_table_decisions = "SELECT * FROM decisions WHERE NOM_ANNEE = '".$_SESSION['choix_annee']."'";
$sql_table_decisions = "SELECT decisions.*, NOM_ET, PRENOM_ET FROM decisions INNER JOIN etudiants ON decisions.MATRICULE_ET = etudiants.MATRICULE_ET WHERE NOM_ANNEE = '".$_SESSION['choix_annee']."'";
//echo $sql_table_decisions;
$req_table_decisions = mysql_query($sql_table_decisions);
$table_decisions = mysql_fetch_array($req_table_decisions);
 
 
 
	class PDF extends PDF_MySQL_Table
	{
		//En-tete
		function Header()
		{
			//Logo
			$this->Image('../../Images/logo.png',10,8,17);
			//Police Arial gras 15
			$this->SetFont('Arial','B',12);
			//Décalage a droite
			$this->Cell(80);
			$this->Ln(20);
		}
 
	}
 
	function SetCol($col)
	{
		//Positionnement sur une colonne
		$this->col=$col;
		$x=10+$col*65;
		$this->SetLeftMargin($x);
		$this->SetX($x);
	}
 
	function AcceptPageBreak()
	{
		//Méthode autorisant ou non le saut de page automatique
		if($this->col<2)
		{
			//Passage à la colonne suivante
			$this->SetCol($this->col+1);
			//Ordonnée en haut
			$this->SetY($this->y0);
			//On reste sur la page
			return false;
		}
	}
 
	function AjouterChapitre($fichier)
	{
		//Ajout du chapitre
 
		$this->CorpsChapitre($fichier);
	}
 
 
	//Instanciation de la classe dérivée
	$pdf=new PDF();
	$pdf->AddPage();
	$pdf->SetFont('Arial','B',12);
	$pdf->Cell(30,10,'Institut de Pharmacie : '. $annee['Nom_complet'],0,'C');
	$pdf->Ln(5);
	$pdf->Cell(30,10,'Université Libre de Bruxelles',0,'C');
	$pdf->Ln(5);
	$pdf->Cell(30,10,'Délibération du : '.$table_decisions['Date_delibe'],0,'C');
	$pdf->Ln(15);
	$pdf->Cell(30,10,'Informations de l\'étudiant : ',0,'C');
	$pdf->Ln(5);
	$pdf->Cell(30,10,$table_decisions['MATRICULE_ET']. ' ' . $table_decisions['NOM_ET']. ' ' . $table_decisions['PRENOM_ET'],0,'C');
	$pdf->Ln(5);$pdf->Ln(5);$pdf->Ln(5);$pdf->Ln(5);
	$cours = array();
	$i = 0;
 
	//echo $liste_cours;
	//echo 'ici ' . $chaine_cours_id;
 
	$pdf->AddCol('MNEMONIC',25,'MNEMONIC');
	$pdf->AddCol('NOM_COURS',150,'NOM_COURS');
	$pdf->AddCol('PROFESSEUR(S)',12,'ECTS');
 
	//$chaine_cours = implode(",",$cours);	
	$liste_cours_NORMAL = "SELECT DISTINCT MNEMONIC, NOM_COURS, ECTS FROM cours WHERE NOM_ANNEE = '".$_SESSION['choix_annee']."' AND CATEGORIE = '" . NORMAL."'";
	$req_liste_cours_NORMAL = mysql_query($liste_cours_NORMAL);
 
	while($nom_des_cours = mysql_fetch_array($req_liste_cours_NORMAL))
	{
		$sql_info_prof = "SELECT NOM_PROF, PRENOM_PROF FROM professeurs WHERE MATRICULE_PROF IN (SELECT DISTINCT MATRICULE_PROF FROM enseigner WHERE MNEMONIC = '".$nom_des_cours['MNEMONIC']."')";
		//echo $sql_info_prof;
		$req_info_prof = mysql_query($sql_info_prof);
		$info_prof = mysql_fetch_array($req_info_prof);
 
	//je sélectionne l'ID du cours pour pouvoir afficher la cote de l'étudiant plus facilement
	$sql_id_cours_NORMAL_TH = "SELECT ID FROM cours WHERE MNEMONIC = '".$nom_des_cours['MNEMONIC']."' AND CATEGORIE = '" . NORMAL."' AND TYPE_DE_COURS = '".TH."' AND ID!=''";
	//echo $id_cours_NORMAL_TH;
	$req_id_cours_NORMAL_TH = mysql_query($sql_id_cours_NORMAL_TH );
	$id_cours_TH = mysql_fetch_array($req_id_cours_NORMAL_TH);
 
	//$sql_id_cours_NORMAL_TP = "SELECT ID FROM inscrits_en WHERE MNEMONIC = '".$nom_des_cours['MNEMONIC']."' AND CATEGORIE = '" . NORMAL."' AND TYPE_DE_COURS = '".TP."' AND ID!=''";
	//$req_id_cours_NORMAL_TP = mysql_query($sql_id_cours_NORMAL_TP);
	//$id_cours_TP = mysql_fetch_array($req_id_cours_NORMAL_TP);
 
	//$sql_cote_th = "SELECT NOTE FROM inscrits_en WHERE ID_COURS = ".$id_cours_TH['ID']." AND MATRICULE_ET = '".$table_decisions['MATRICULE_ET']."' AND " .$id_cours_TH['ID']." != NULL ";
 
if ($id_cours_TH['ID'] != '')
{
	$sql_cote_th = "SELECT NOTE FROM inscrits_en WHERE MATRICULE_ET = '".$table_decisions['MATRICULE_ET']."' AND ID_COURS = ".$id_cours_TH['ID'];
 
}	
 
 
	//echo $sql_cote_th;	
	$req_cote_th = mysql_query($sql_cote_th);
	$nombre_resultat_th = mysql_num_rows($req_cote_th);
	//echo $nombre_resultat_th;
	//l'erreur provient de cette ligne
 
	$cote_th = mysql_fetch_array($req_cote_th);
	//var_dump($cote_th);
 
	//$sql_cote_TP = "SELECT NOTE FROM inscrits_en WHERE ID_COURS = ".$id_cours_TP['ID']." AND MATRICULE_ET = '".$table_decisions['MATRICULE_ET']."' ";
	//echo $sql_cote_TP;
	//$req_cote_TP = mysql_query($sql_cote_TP);
	//$cote_TP = mysql_fetch_array($req_cote_TP);
 
 
	$pdf->AjouterChapitre($pdf->Cell(30,10,$nom_des_cours['MNEMONIC'],0,'C'));
 
 
		 $pdf->Cell(30,10,$nom_des_cours['MNEMONIC'],0,'C');	
		//$pdf->MultiCell(70,5,$nom_des_cours['NOM_COURS'],1,'L'); Le L permet d'aligner a gauche (voir sur le site fpdf.org dans manule => MultiCell), le 0 juste avant inique que l'on n'utilise pas d'encadrement pour la cellule.
		//le "\n" ajoute un retour a la ligne, il doit etre entre guillemets
		$pdf->MultiCell(80,5,$nom_des_cours['NOM_COURS']."\n".' (Professeur '. $info_prof['NOM_PROF']. ' )                              '.$cote_th['NOTE'] ,0,'L');
		$pdf->Ln();
	}
 
 
 
 
 
	$pdf->AliasNbPages();
	$pdf->Output();
 
?>
Un sincère merci d'avance.

beegees