Class : affichage de tableau avec couleur alternée

Contenu du snippet

Voici une petite class permettant d'afficher un tableau avec des couleurs alternées

Fonction:
->Affichage du titre
->Affichage du contenu d'un tableau de tableau

Nota : c'est une premiere version

Source / Exemple :


<?php
//		Fichier DataGrid.inc
//
//		Version du DataGrid traduit en php
//
//	Créateur : Trinita
//	Date de Création : 18/04/2004
//
//	Date de modification : 18/04/2004
//	Version : 1.0.0
//
// Historique des versions :
//
//	Version 1.0.0: Premier Version finalisée

class DataGrid
{
	// Déclaration des variables
	var $Couleur_Pair;
	var $Couleur_Impair;
	
	// Contruction et affichage du tableau
	function GridTitle ( $DataTitle )
	{
		$this->DataTitle = $DataTitle;
		
		echo "<table border='1'><tr>";
		foreach ( $DataTitle as $Value )
		{
			echo "<th>".$Value."</th>";
		}
		echo "</tr>";		
	}
	// affiche le contenu du tableau
	// Structure du tableau DataSource :
	// c'est un tableau de tableau, chaque ligne représente une colonne à afficher
	function DataBind ( $DataSource )
	{
		$this->DataSource = $DataSource;
		
		$MyCouleur_Pair = $this->Couleur_Pair;
		$MyCouleur_Impair = $this->Couleur_Impair;
		
		if ( strlen($MyCouleur_Pair) == 0 )
			$MyCouleur_Pair ="#ffffff";
		if ( strlen($MyCouleur_Impair) == 0 )
			$MyCouleur_Impair ="#ffffff";
		
		$NbColonne = count ( $DataSource ) - 1 ;		// Commence à zéro
		$Col_Id = count ( $DataSource[0] );
		
		// Fonctionnement
		// ON boucle sur le premier tableau de la premier ligne pour savoir le nombre de lignes
		for ( $row=0; $row < $Col_Id; $row++)
		{
			// Maintenant on boucle sur les différentes colonnes
			echo "<tr>";
			for ( $Col=0; $Col <=$NbColonne; $Col++ )
			{
				if ( $row%2 )
					echo "<td bgcolor=".$MyCouleur_Impair.">".$DataSource[$Col][$row]."</td>";
				else
					echo "<td bgcolor=".$MyCouleur_Pair.">".$DataSource[$Col][$row]."</td>";
			}
			echo "</tr>";
		}
		echo "</table>";
	}
}

?>

<?php
//
//	Fichier : Index.php
//	test des classes

// Class DataGrid
include 'DataGrid.inc';

$Title = array ( "nom", "prenom" );

$Mydt = array ( 0 => array ("aaaaa","cc","eee","gggg"),
				1 => array ("bbbbb","dd","fff","hhhh")
				);

$MyDataGrid = new DataGrid ();
$MyDataGrid->GridTitle( $Title );
$MyDataGrid->DataBind( $Mydt, "", "" );

$MyDataGrid_2 = new DataGrid ( );

$MyDataGrid_2->Couleur_Pair = "#0000FF" ;
$MyDataGrid_2->Couleur_Impair = "#FF0000";

$MyDataGrid_2->GridTitle( $Title );
$MyDataGrid_2->DataBind( $Mydt );

?>

Conclusion :


deux exemples dans le fichier index.php

$MyDataGrid => sans couleur alterné
$MyDataGrid_2-> => avec couleur alterné

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.