www.philatelistes.net - Afficher des données dans un tableau paramétrable avec PHP
Les Cérès de Bordeaux
1870-1871 GOUVERNEMENT PROVISOIRE
EMISSION DITE "CERES DE BORDEAUX".
Ce site a été conçu pour être utile au collectionneur. Commencé le 16 février 2011, il mettra quelques années avant d'être complet. Pour le moment le chantier le plus compliqué, celui du 20 centimes est ouvert. Ce site deviendra en premier lieu une aide à l'identification incontournable. Il sera fait par vous, pour vous. N'hésitez pas à participer de la manière que vous pouvez. En attendant, bénéficiez des possibilités suivantes, au fur et à mesure de leur mise en fonction

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