Salut salut tout le monde,
Maintenant que mon export sous tableau PDF marche nickel, j'aimerais y ajouter le numéro de page en bas à droite de chaque page ....
Comment dois-je faire pour cela ???
Salut salut tout le monde,
Maintenant que mon export sous tableau PDF marche nickel, j'aimerais y ajouter le numéro de page en bas à droite de chaque page ....
Comment dois-je faire pour cela ???
Resalut,
Par défaut si tu utilises la fonction "startPageNums();", ca affiche le numéro de page en bas au milieu...
Si tu regardes les sources de ce que tu as téléchargé, tu peux essayer de modifier le code pour ajouter un paramètre à cette fonction comme par exemple "startPageNums(centered|left|right);"
++
JC
VELOMASTER, idée cadeau ? un jeu de plateau
Hummmmm, des donuts !!!!
Merci de penser à , et et aussi
Bon et bien ça marche pas des masses ....
Pour rappel, voici le code de ma page dabs lequel je voudrais mettre un code pour numéroter les pages ... 1/5 2/5 3/5
Si quelqu'un pouvait me donner un piti coup de main ....
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 } elseif ( $export === 'pdf' ) { ob_start(); // Enclenche la tamporisation de sortie require('fpdf.php'); $x = '10'; $y = '10'; $pdf=new fpdf();//on instancie un objet Portait en milimètre et au format A4 /** * Comme je met les mesure en mm cele me permet de placer tous les éléments aux mm prés * Cela fonctione sur le principe de l'abscice et l'ordonnée * le X représente la largeur * le Y représente la hauteur */ $pdf->AliasNbPages(nb); $pdf->AddPage('P','mm','A4');//on crée la page $pdf->Image('../images/logo CMF-2.jpg',10,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',40,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',70,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',100,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',110,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',140,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',170,10,30,10); /** * les mesure sont aux hasard à toi de modifier le 10/10 représente la position sur la page,30/10 la taille de l'image */ $pdf->SetXY($x, $y); $pdf->SetFont('Times','BIU',20);// définit l'écriture pour le titre $pdf->Cell(190,10,'Exportation de la liste des affaires en PDF',1,1,'C'); $nb_col = 6; $largeur_total_page = 210; $largeure_colonne = ($largeur_total_page -20) / $nb_col; $pdf->SetXY($x, $y+10);//on place le pointeur $pdf->SetFont('Times', '', 7);// défint l'écriture pour tous ce qui suit while ($row_rsDossiers = mysql_fetch_assoc($rsDossiers)) { $pdf->Cell(12, 5, $row_rsDossiers['Numaff'], 1, 0, 'C', 0); $pdf->Cell(49, 5, $row_rsDossiers['Client'], 1, 0, 'C', 0); $pdf->Cell(63, 5, $row_rsDossiers['Nomaff'], 1, 0, 'C', 0); $pdf->Cell(40, 5, $row_rsDossiers['Resprojet'], 1, 0, 'C', 0); $pdf->Cell(8, 5, $row_rsDossiers['Annee'], 1, 0, 'C', 0); // Largeur A NE PAS MODIFIER $pdf->Cell(18, 5, $row_rsDossiers['Numcd'], 1, 1, 'C', 0); // Largeur A NE PAS MODIFIER //Numéro de page // $pdf->Cell(0,10,'Page '.$pdf->PageNo().'/{nb}',0,0,'C'); } ob_end_clean(); // Détruit les données du tampon de sortie et éteint la tamporisation de sortie $pdf->Output(); } ?>
Merci
Salut
Ta variable "nb" correspond à quoi ?? essaye
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $pdf->AliasNbPages(nb);
Ce qui donne avec ton code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $pdf->AliasNbPages(5);
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 } elseif ( $export === 'pdf' ) { ob_start(); // Enclenche la tamporisation de sortie require('fpdf.php'); $x = '10'; $y = '10'; $pdf=new fpdf();//on instancie un objet Portait en milimètre et au format A4 /** * Comme je met les mesure en mm cele me permet de placer tous les éléments aux mm prés * Cela fonctione sur le principe de l'abscice et l'ordonnée * le X représente la largeur * le Y représente la hauteur */ $pdf->AliasNbPages(5);$pdf->AddPage('P','mm','A4');//on crée la page $pdf->Image('../images/logo CMF-2.jpg',10,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',40,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',70,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',100,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',110,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',140,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',170,10,30,10); /** * les mesure sont aux hasard à toi de modifier le 10/10 représente la position sur la page,30/10 la taille de l'image */ $pdf->SetXY($x, $y); $pdf->SetFont('Times','BIU',20);// définit l'écriture pour le titre $pdf->Cell(190,10,'Exportation de la liste des affaires en PDF',1,1,'C'); $nb_col = 6; $largeur_total_page = 210; $largeure_colonne = ($largeur_total_page -20) / $nb_col; $pdf->SetXY($x, $y+10);//on place le pointeur $pdf->SetFont('Times', '', 7);// défint l'écriture pour tous ce qui suit while ($row_rsDossiers = mysql_fetch_assoc($rsDossiers)) { $pdf->Cell(12, 5, $row_rsDossiers['Numaff'], 1, 0, 'C', 0); $pdf->Cell(49, 5, $row_rsDossiers['Client'], 1, 0, 'C', 0); $pdf->Cell(63, 5, $row_rsDossiers['Nomaff'], 1, 0, 'C', 0); $pdf->Cell(40, 5, $row_rsDossiers['Resprojet'], 1, 0, 'C', 0); $pdf->Cell(8, 5, $row_rsDossiers['Annee'], 1, 0, 'C', 0); // Largeur A NE PAS MODIFIER $pdf->Cell(18, 5, $row_rsDossiers['Numcd'], 1, 1, 'C', 0); // Largeur A NE PAS MODIFIER //Numéro de page $text = "Page " . $pdf->PageNo() . "/{5}"; $pdf->Cell(0,10,$text,0,0,'C'); } ob_end_clean(); // Détruit les données du tampon de sortie et éteint la tamporisation de sortie $pdf->Output(); } ?>
++
JC
VELOMASTER, idée cadeau ? un jeu de plateau
Hummmmm, des donuts !!!!
Merci de penser à , et et aussi
Je pensais qu'il fallait mettre la variable nb pour le nombre de page ...
J'ai 24 page en tout donc au lieu de 5 j'ai mis 24 et en bas du code aussi ...
Le soucis est qu'il me créer la cellule sans le cadre dans laquelle il centre le texte mais il me décale toute les cellules de mon tableau ...
Et si je spécifie une position différente, vers le bas il me décale toute mes pages donc je me retrouve avec 25 pages et en plus le nbr de page n'est écris que en haut de la première page ...
Je pense que ce code n'est pas insérer au bon endroit ....
Salut, je vais tenter de répondre à ton prob mais il faut absolument qu'avant de poser tes questions, tu cherche les réponses sur le site fpdf.org à la rubrique manuel car je fais de la redite...
1) nb est bien le nombre de page mais en PHP, nb n'est pas une variable, $nb oui
2) Pour avoir une cellule avec cadre (cf. manuel), la 4ieme paramètre doit être égal à 1...
3) Pour information, la méthode Cell affiche une cellule en position courante de taille w, h --> Cell(w, h, texte, cadre, ...)
Pour afficher une cellule en position (x,y) dans ta page, il faut faire
Si tu déclares ta cellule contenant le nombre de page avant tes cellules de tableau, c normal que ces dernières soient décalées car le positionnement de la cellule Page modifie la position courante...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 $pdf->SetXY(x,y); $pdf->Cell(w, u, texte, cadre...);
Je t'invite à aller voir le tutorial phpToPDF car Cell, MultiCell et autres y sont expliquées...
L'idée, c que la méthode Cell crée des cellules à la position courante donc si tu insères une cellule entre deux autres, la dernière sera décalée car celle que tu insère décale la position courante.
POur utiliser des cellules sans décalage, il faut mettre avant chaque appel de la méthode Cell un appel à la méthode SetXY...
++
JC
VELOMASTER, idée cadeau ? un jeu de plateau
Hummmmm, des donuts !!!!
Merci de penser à , et et aussi
ça ne fonctionne pas ...
Je laisse tomber .....
c quoi ce défaitisme!!!!!
Allez balance ton code (entier) pour qu'on puisse t'aider...
VELOMASTER, idée cadeau ? un jeu de plateau
Hummmmm, des donuts !!!!
Merci de penser à , et et aussi
Ok merci .........
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 <?php require_once('../Connexions/ConnexionArchives.php'); mysql_select_db($database_ConnexionArchives, $ConnexionArchives); $orderby = isset($_GET['orderby']) ? $_GET['orderby'] : 'numaff'; $export = isset($_GET['export']) ? $_GET['export'] : ''; $query_rsDossiers = "SELECT Archives.Numaff, Archives.Client, Archives.Nomaff, Archives.Resprojet, Archives.Annee, Archives.Numcd FROM Archives ORDER BY $orderby"; $rsDossiers = mysql_query($query_rsDossiers, $ConnexionArchives) or die(mysql_error()); $totalRows_rsDossiers = mysql_num_rows($rsDossiers); if ($export === 'excel') { header("Content-Type: text/x-csv"); header('Content-Disposition: attachement; filename="Exportexcel.csv"'); $list = "\"N° affaires\"; \"Clients\"; \"Noms d'affaires\"; \"Responsables projets\"; \"Années\"; \"N° CD/DVD\";\r\n"; while ($row_rsDossiers = mysql_fetch_assoc($rsDossiers)) { $list .= $row_rsDossiers['Numaff'] .";". $row_rsDossiers['Client'] .";" . $row_rsDossiers['Nomaff'] .";". $row_rsDossiers['Resprojet'] .";" . $row_rsDossiers['Annee'] .";". $row_rsDossiers['Numcd'] ."\r\n"; } echo $list; } elseif ( $export === 'pdf' ) { ob_start(); // Enclenche la tamporisation de sortie require('fpdf.php'); $x = '10'; $y = '10'; $pdf=new fpdf();//on instancie un objet Portait en milimètre et au format A4 /** * Comme je met les mesure en mm cele me permet de placer tous les éléments aux mm prés * Cela fonctione sur le principe de l'abscice et l'ordonnée * le X représente la largeur * le Y représente la hauteur */ $pdf->AliasNbPages(nb); $pdf->AddPage('P','mm','A4');//on crée la page $pdf->Image('../images/logo CMF-2.jpg',10,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',40,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',70,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',100,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',110,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',140,10,30,10); $pdf->Image('../images/logo CMF-2.jpg',170,10,30,10); /** * les mesure sont aux hasard à toi de modifier le 10/10 représente la position sur la page,30/10 la taille de l'image */ $pdf->SetXY($x, $y); $pdf->SetFont('Times','BIU',20);// définit l'écriture pour le titre $pdf->Cell(190,10,'Exportation de la liste des affaires en PDF',1,1,'C'); $pdf->SetXY($x, $y+10);//on place le pointeur $pdf->SetFont('Times', '', 7);// définit l'écriture pour tous ce qui suit while ($row_rsDossiers = mysql_fetch_assoc($rsDossiers)) { $pdf->Cell(13, 5, $row_rsDossiers['Numaff'], 1, 0, 'C', 0); // Largeur A NE PAS MODIFIER $pdf->Cell(48, 5, $row_rsDossiers['Client'], 1, 0, 'C', 0); // Largeur A NE PAS MODIFIER $pdf->Cell(63, 5, $row_rsDossiers['Nomaff'], 1, 0, 'C', 0); // Largeur A NE PAS MODIFIER $pdf->Cell(40, 5, $row_rsDossiers['Resprojet'], 1, 0, 'C', 0); // Largeur A NE PAS MODIFIER $pdf->Cell(8, 5, $row_rsDossiers['Annee'], 1, 0, 'C', 0); // Largeur A NE PAS MODIFIER $pdf->Cell(18, 5, $row_rsDossiers['Numcd'], 1, 1, 'C', 0); // Largeur A NE PAS MODIFIER } ob_end_clean(); // Détruit les données du tampon de sortie et éteint la tamporisation de sortie $pdf->Output(); } ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><!-- InstanceBegin template="/Templates/ListeArchives.dwt" codeOutsideHTMLIsLocked="false" --> <head> <!-- InstanceBeginEditable name="doctitle" --> <title>Liste par nom d'affaire</title> <!-- InstanceEndEditable --> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <!-- InstanceBeginEditable name="head" --> <!-- InstanceEndEditable --> </head> <body bgcolor="#F2F2F2"> <div align="center"></div> <table width="1000" height="452"> <tr> <td width="542" height="35"> </td> <td width="246"> </td> </tr> <tr> <td colspan="2" valign="top" bgcolor="#F2F2F2"><div align="center"> <!-- InstanceBeginEditable name="tableau" --> <div align="center"> <p> </p> <p><a href="liste.php?orderby=<?php echo $orderby; ?>&export=excel">Export au format Excel</a></p> <p><a href="liste.php?orderby=<?php echo $orderby; ?>&export=pdf"">Export au format PDF</a></p> <p> </p> </div> <table width="100%" border="1"> <tr> <td width="80"><div align="center"><font color="#6633CC"><strong>N° affaires </strong></font></div></td> <td width="180"><div align="center"><font color="#6633CC"><strong>Clients</strong></font></div></td> <td width="0"><div align="center"><font color="#6633CC"><strong>Noms d affaires</strong></font></div></td> <td width="140"><div align="center"><font color="#6633CC"><strong>Responsables projets</strong></font></div></td> <td width="140"><div align="center"><font color="#6633CC"><strong>Années</strong></font></div></td> <td width="140"><div align="center"><font color="#6633CC"><strong>N° CD/DVD </strong></font></div></td> </tr> <?php while ($row_rsDossiers = mysql_fetch_assoc($rsDossiers)) { ?> <tr> <td width="0"><div align="center"><?php echo $row_rsDossiers['Numaff']; ?></div></td> <td width="0"><div align="center"><?php echo $row_rsDossiers['Client']; ?></div></td> <td width="0"><div align="center"><?php echo $row_rsDossiers['Nomaff']; ?></div></td> <td width="0"><div align="center"><?php echo $row_rsDossiers['Resprojet']; ?></div></td> <td width="0"><div align="center"><?php echo $row_rsDossiers['Annee']; ?></div></td> <td width="0"><div align="center"><?php echo $row_rsDossiers['Numcd']; ?></div></td> </tr> <?php } ?> </table> <!-- InstanceEndEditable --> <p> </p> <p> </p> </div></td> </tr> </table> <p align="center"><strong><font size="7" face="Arial, Helvetica, sans-serif"></font></strong></p> </body> <!-- InstanceEnd --></html> <?php mysql_free_result($rsDossiers); ?>
Et en utilisant ça :
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 class PDF extends FPDF { //En-tête function Header() { . . . } //Pied de page function Footer() { //Positionnement $this->SetY(-15); //Police $this->SetFont('Arial','I',8); //Numéro de page $this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'C'); } } . . . $pdf=new PDF(); $pdf->AliasNbPages(); $pdf->AddPage();
+1 Mat_DZ
VELOMASTER, idée cadeau ? un jeu de plateau
Hummmmm, des donuts !!!!
Merci de penser à , et et aussi
Tout simplement EXCELLENT !!!!!!
CA MARCHE DU FEU DE DIEU ....
(Hhhm marge, appelle les pompiers ....)
You hou .....
Merci encore les gars vous êtes balaises ....
Par contre en enlevant les points ça marche mieux ....
Merci encore
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 class PDF extends FPDF { //En-tête function Header() { } //Pied de page function Footer() { //Positionnement $this->SetY(-15); //Police $this->SetFont('Arial','I',8); //Numéro de page $this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'C'); } }
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager