www.philatelistes.net - Afficher des données dans un tableau paramétrable avec PHP
Cartophilie, enveloppes sur soie, FDC Belge (jmc)

www.philatelistes.net

Rechercher Membres Contacts Aide
Modération off     Accueil | Actualité | Annonces | Forum | Philamômes | Histoire postale | Merson | Liens

Actualité
Actualité

Evénements

Revue de presse
Le forum
Les sondages

Vendre, Acheter, Echanger
Les adresses
Ventes sur offres ou à prix nets
Petites annonces

Afficher des données dans un tableau paramétrable avec PHP


Introduction
Astuces PHP et MySQL
Les images
Caractères ASCII
Couleurs du Web
Le e-mail
Aspects légaux
Javascript

Exemple

Nb valeurs  = 31

Nb Lignes   = 11
Nb Colonnes = 3

Affichage   = VERTICAL
Completer   = OUI
 2  29  57 
 5  31  58 
 9  32  59 
 13  35  62 
 15  37  64 
 17  39  66 
 18  43  68 
 19  48  70 
 23  49  73 
 24  52   
 27  55   

Code PHP

pour télécharger, cliquez ici pour télécharger, cliquez ici

Code associé

<?php

// ------------------------------------------------------------------------- //
// Afficher des données dans un tableau paramétrable : en nb de colonnes ou  //
// en nb de lignes, et en orientation (de la gauche vers la droite ou du     //
// haut vers le bas.                                                         //
// ------------------------------------------------------------------------- //
// Auteur: J-Pierre DEZELUS                                                  //
// Email:  jpdezelus@phpinfo.net                                             //
// Web:    http://www.phpinfo.net/                                           //
// ------------------------------------------------------------------------- //


// mettre à zéro si calcul automatique à partir de nbcol
if (!isset($nblig)) $nblig 0;

// mettre à zéro si calcul automatique à partir de nblig
if (!isset($nbcol)) $nbcol 3;

// dessiner les cellules ne contenant pas de valeurs en fin de tableau
if (!isset($completer)) $completer 1;

// 1 => du haut vers le bas puis de la gauche vers la droite
// 0 => de la gauche vers la droite puis du haut vers le bas
if (!isset($vertical)) $vertical 1;


// récupération des n valeurs dans $tValeurs[] 
// ...
// ...

// Exemple de valeurs
$tValeurs = Array(25913151718192324272931323537,
                  
394348495255575859626466687073);

$nb_total sizeof($tValeurs);

// calcul des limites
if ($nblig != 0)
{
    
$nbcol ceil($nb_total $nblig);
}
elseif (
$nbcol != 0)
{
    
$nblig ceil($nb_total $nbcol);
}
else
{
    echo 
"Nb de lignes et Nb de colonnes indéfinis !";
    exit;
}

echo 
"<PRE>";
echo 
"Nb valeurs  = ".$nb_total."\n\n";
echo 
"Nb Lignes   = ".$nblig."\n";
echo 
"Nb Colonnes = ".$nbcol."\n\n";
echo 
"Affichage   = ".($vertical 'VERTICAL' 'HORIZONTAL')."\n";
echo 
"Completer   = ".($completer 'OUI' 'NON');
echo 
"</PRE>\n";

echo 
"<TABLE CELLSPACING=1>\n\n";

$limite $completer $nbcol*$nblig $nb_total;

if (
$vertical)
{
    
// affichage vertical
    
for ($cpt 0$cpt $limite$cpt++)
    {
        
$col = (int)($cpt $nblig) + 1;

        
$lig = ($cpt $nblig) + 1;

        
$valeur = ($cpt $nb_total) ? $tValeurs[$cpt] : '';
        
        if (
$col == 1$ligne[$lig] = "<TR BGCOLOR='#DADADA'>";
        
$ligne[$lig] .= "<TD>&nbsp;".$valeur."&nbsp;</TD>";
        if (
$col == $nbcol$ligne[$lig] .= "</TR>\n\n";
    }
    for (
$cpt 1$cpt <= sizeof($ligne); $cpt++)
    {
        echo 
$ligne[$cpt];
    }
}
else
{
    
// affichage horizontal
    
for ($cpt 0$cpt $limite$cpt++)
    {
        
$col = ($cpt $nbcol) + 1;

        
$valeur = ($cpt $nb_total) ? $tValeurs[$cpt] : '';

        if (
$col == 1) echo "<TR BGCOLOR='#DADADA'>";
        echo 
"<TD>&nbsp;".$valeur."&nbsp;</TD>";
        if (
$col == $nbcol) echo "</TR>\n\n";
    }
}
echo 
"</TABLE>\n";

?> 


Imprimer cette page  | Recommander cette page à un ami


Toussaint COPPOLANI
Toussaint COPPOLANI

Copyright © 2000 www.philatelistes.net
Credits, Critiques