IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[phpToPDF] Intitulé de colonne de tableau sur deux lignes de tableau


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre extrêmement actif Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Points : 682
    Points
    682
    Par défaut [phpToPDF] Intitulé de colonne de tableau sur deux lignes de tableau
    Bonjour,

    Je souhaite faire un entête de colonne sur 2 lignes.

    La 1ère ligne avec un "COLSPAN2" et donc un titre global et la seconde avec 2 titres, 1 pour chaque colonnes

    1ère ligne
    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
    $contenuHeader = array(
    	50, 20, 20, 20, 20, 20, 20, 20, 20,
    	"",
    	"",
    	"",
    	"",
    	"",
    	"",
    	"",
    	"",
    	"",
    	);
    	$contenuTableau = array_merge($contenuTableau, array("[RB]FAMILLE",
    													 "[CB]ROUGE",
    													 "COLSPAN2",
    													 "[CB]GRIS",
    													 "COLSPAN2",
    													 "[CB]BLANC",
    													 "COLSPAN2",
    													 "[CB]T O T A L",
    													 "COLSPAN2",
    													 ));
    2ème ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $contenuHeader = array(
    	50, 20, 20, 20, 20, 20, 20, 20, 20,
    	" ",
    	"[CB]NOMBRE",
    	"[CB]%",
    	"[CB]NOMBRE",
    	"[CB]%",
    	"[CB]NOMBRE",
    	"[CB]%",
    	"[CB]NOMBRE",
    	"[CB]%",
    	);
    Est-il possible d'avoir les 2 entêtes en même temps ?

    Merci d'avance.
    Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.

  2. #2
    Membre extrêmement actif Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Points : 682
    Points
    682
    Par défaut
    Et la réponse est :

    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
    function Header()
    	{
    		global $proprietesTableau, $proprieteHeader, $contenuHeader, $proprieteContenu;
     
    		$this->SetFont('times','B',11);
    		$this->SetY(10);
    		$this->MultiCell(0, 4, $stat_titre, 0, 'C', 0);
    		$this->Ln(10);
    		$this->SetFont('times','',8);
    // Définition des propriétés du tableau.
    	$proprietesTableau = array(
    		'TB_ALIGN' => 'L',
    		'L_MARGIN' => 0,
    		'BRD_COLOR' => array(0,92,177),
    		'BRD_SIZE' => '0.3',
    		);
     
    	// Définition des propriétés du header du tableau.
    	$proprieteHeader = array(
    		'T_COLOR' => array(150,10,8),
    		'T_SIZE' => 5,
    		'T_FONT' => 'times',
    		'T_ALIGN' => 'C',
    		'V_ALIGN' => 'M',
    		'T_TYPE' => 'B',
    		'LN_SIZE' => 4,
    		'BG_COLOR_COL0' => array(170, 240, 230),
    		'BG_COLOR' => array(170, 240, 230),
    		'BRD_COLOR' => array(0,92,177),
    		'BRD_SIZE' => 0.2,
    		'BRD_TYPE' => '1',
    		'BRD_TYPE_NEW_PAGE' => '',
    		);
     
    	// Définition des propriétés du reste du contenu du tableau.
    	// La valeur de 'IMAGE' donne le n° de la colonne devant recevoir cette image
    	$proprieteContenu = array(
    			'IMAGE' => '1',
    			'T_COLOR' => array(100,10,8),
    			'T_SIZE' => 5,
    			'T_FONT' => 'Arial',
    			'T_ALIGN_COL0' => 'L',
    			'T_ALIGN' => 'L',
    			'V_ALIGN' => 'T',
    			'T_TYPE' => '',
    			'LN_SIZE' => 4,
    			'BG_COLOR_COL0' => array(170, 240, 230),
    			'BG_COLOR' => array(170, 240, 230),
    			'BRD_COLOR' => array(0,92,177),
    			'BRD_SIZE' => 0.2,
    			'BRD_TYPE' => '1',
    			'BRD_TYPE_NEW_PAGE' => '',
    			);
    	// Contenu du header du tableau.
    	$contenuHeader = array(
    			50, 20, 20, 20, 20, 20, 20, 20, 20,
    			"",
    			"",
    			"",
    			"",
    			"",
    			"",
    			"",
    			"",
    			"",
    			);
    	$contenuTableau = array();
    	$contenuTableau = array_merge($contenuTableau, array("[RB]FAMILLE",
    													 "[CB]ROUGE",
    													 "COLSPAN2",
    													 "[CB]GRIS",
    													 "COLSPAN2",
    													 "[CB]BLANC",
    													 "COLSPAN2",
    													 "[CB]T O T A L",
    													 "COLSPAN2",
    													 ));
     
    	$pdf->drawTableau($pdf, $proprietesTableau, $proprieteHeader, $contenuHeader, $proprieteContenu, $contenuTableau);
    	$contenuTableau = array();
    	// Contenu du header du tableau.
    	$contenuHeader = array(
    		50, 20, 20, 20, 20, 20, 20, 20, 20,
    		"[B]".$stat_titre_colonne,
    		"[CB]NOMBRE",
    		"[CB]%",
    		"[CB]NOMBRE",
    		"[CB]%",
    		"[CB]NOMBRE",
    		"[CB]%",
    		"[CB]NOMBRE",
    		"[CB]%",
    		);
    	$proprieteContenu = array(
    		'IMAGE' => '1',
    		'T_COLOR' => array(0,0,0),
    		'T_SIZE' => 5,
    		'T_FONT' => 'Arial',
    		'T_ALIGN_COL0' => 'L',
    		'T_ALIGN' => 'L',
    		'V_ALIGN' => 'T',
    		'T_TYPE' => '',
    		'LN_SIZE' => 5,
    		'BG_COLOR_COL0' => array(255,255,255),
    		'BG_COLOR' => array(255,255,255),
    		'BRD_COLOR' => array(0,92,177),
    		'BRD_SIZE' => 0.1,
    		'BRD_TYPE' => '1',
    		'BRD_TYPE_NEW_PAGE' => '',
    		);
     
    	$pdf->drawTableau($pdf, $proprietesTableau, $proprieteHeader, $contenuHeader, $proprieteContenu, $contenuTableau);		
     
    	}
    Merci pour votre visite.
    Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Statistiques et Informatique
    Inscrit en
    Mai 2012
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Statistiques et Informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2012
    Messages : 22
    Points : 28
    Points
    28
    Par défaut
    Bonjour,

    Je cherche à faire la même chose, c'est-à-dire avoir deux en-têtes.

    J'ai repris ton code en modifiant bien sûr le nom de mes colonnes (et le nombre), mais j'obitens une erreur...

    Voici mon code :

    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
    <?php
     
    //include("ver_resultados.php");
    include("phpToPDF.php");
     
    $pdf=new phpToPDF();
    $pdf->AddPage();
    $pdf->SetFont('Arial','B',16);
    $pdf->Image('images/logo-nuevo-web.jpg',50,50,110);
    $pdf->Image('images/logo_hosa.jpg',50,null,110);
     
     function Header()
    	{
    		global $proprietesTableau, $proprieteHeader, $contenuHeader, $proprieteContenu;
     
                    $this->SetFont('Arial','B',11);
    		$this->SetY(10);
    		$this->MultiCell(0, 4, 0, 'C', 0);
    		$this->Ln(10);
    		$this->SetFont('Arial','',8);
    // Table's properties.
    $proprietesTableau = array(
    	'TB_ALIGN' => 'L',
    	'L_MARGIN' => 15,
    	'BRD_COLOR' => array(0,92,177),
    	'BRD_SIZE' => '0.3',
    	);
     
    // Table's header's properties.	
    $proprieteHeader = array(
    	'T_COLOR' => array(0,0,0),
    	'T_SIZE' => 12,
    	'T_FONT' => 'Arial',
    	'T_ALIGN' => 'L',
    	'V_ALIGN' => 'T',
    	'T_TYPE' => '',
    	'LN_SIZE' => 1,
    	'BG_COLOR_COL0' => array(240, 240, 240),
    	'BG_COLOR' => array(240, 240, 240),
    	'BRD_COLOR' => array(0,0,0),
    	'BRD_SIZE' => 0.2,
    	'BRD_TYPE' => '0',
    	'BRD_TYPE_NEW_PAGE' => '',
    	);
     
     
    // Table's remaining content's properties.	
    $proprieteContenu = array(
    	'T_COLOR' => array(0,0,0),
    	'T_SIZE' => 10,
    	'T_FONT' => 'Arial',
    	'T_ALIGN_COL0' => 'L',
    	'T_ALIGN' => 'R',
    	'V_ALIGN' => 'M',
    	'T_TYPE' => '',
    	'LN_SIZE' => 6,
    	'BG_COLOR_COL0' => array(245, 245, 150),
    	'BG_COLOR' => array(255,255,255),
    	'BRD_COLOR' => array(0,92,177),
    	'BRD_SIZE' => 0.1,
    	'BRD_TYPE' => '1',
    	'BRD_TYPE_NEW_PAGE' => '',
    	);	
     
    // Content of the table's header.	
    $contenuHeader = array(
    	30, 30, 30, 30, 30,
    	"[B]Candidato:", "COLSPAN2", "[B]Puesto:", "[B]F. Nacimiento:", "[B]Hotel:",
    	);
     
     
    // Contenu du tableau.	
    $contenuTableau = array();	
    $contenuTableau = array_merge($contenuTableau, array("name", "COLSPAN2", "Programador", "date", "namehotel"));
     
     
    $pdf->drawTableau($pdf, $proprietesTableau, $proprieteHeader, $contenuHeader, $proprieteContenu, $contenuTableau);
     
    $contenuTableau = array();
    // Table's header content.
    $contenuHeader = array(
        30,30,30,30,30,
        "TEST", "PUNTUACIÓN DIRECTA", "PUNTUATIÓN CENTIL", "TIEMPO", "BAREMO",
    );
     
    $proprieteContenu = array(
    		'T_COLOR' => array(0,0,0),
    		'T_SIZE' => 5,
    		'T_FONT' => 'Arial',
    		'T_ALIGN_COL0' => 'L',
    		'T_ALIGN' => 'L',
    		'V_ALIGN' => 'T',
    		'T_TYPE' => '',
    		'LN_SIZE' => 5,
    		'BG_COLOR_COL0' => array(255,255,255),
    		'BG_COLOR' => array(255,255,255),
    		'BRD_COLOR' => array(0,92,177),
    		'BRD_SIZE' => 0.1,
    		'BRD_TYPE' => '1',
    		'BRD_TYPE_NEW_PAGE' => '',
    		);
     
    	$pdf->drawTableau($pdf, $proprietesTableau, $proprieteHeader, $contenuHeader, $proprieteContenu, $contenuTableau);		
     
    }
     
    $pdf->Output();
     
    ?>

    Et mon erreur est :

    Fatal error: Cannot redeclare Header() in C:\Program Files (x86)\EasyPHP-12.1\www\hosa\resultados_pdf.php on line 105
    La ligne 105 'etant celle juste avant le $pdf->Output();, c'est à dire la fin de la fonction, le }.

    Alors comment ça il y a deux en-têtes ? Ça avait l'air de marcher pour toi...
    Je passe sûrement à còté de quelque chose, si quelqu'un pouvait me donner un petit coup de pouce...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XIR2] Tableau sur deux colonnes
    Par raoudi57 dans le forum Webi
    Réponses: 8
    Dernier message: 03/09/2013, 14h11
  2. Réponses: 1
    Dernier message: 19/03/2008, 17h32
  3. Forcer la scission d'un tableau sur deux colonnes
    Par JannyBoop dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 0
    Dernier message: 08/12/2007, 04h06
  4. Réponses: 3
    Dernier message: 26/09/2005, 22h24
  5. [VB.NET] DataGrid : titre des colonnes sur deux lignes
    Par Lahouari dans le forum Windows Forms
    Réponses: 6
    Dernier message: 06/12/2004, 14h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo