Class : affichage de tableau avec couleur alternée

Soyez le premier à donner votre avis sur cette source.

Snippet vu 11 779 fois - Téléchargée 26 fois

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

Ajouter un commentaire

Commentaires

Messages postés
199
Date d'inscription
lundi 22 juillet 2002
Statut
Membre
Dernière intervention
14 juin 2006

J'en ai bien eu l'idée mais je manque de temps
Messages postés
22
Date d'inscription
lundi 24 novembre 2003
Statut
Membre
Dernière intervention
4 octobre 2005

Salut,
Je cherche le meme script que le tien, avec plus d'option !
Par exemple, la lagreur du tableau, la largeur des colonnes, la couleur du titre...

As tu dans l'idée d'ajouter ce genre d'option ?

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.