[PHP] Tableau dynamique paramétrable
Résolu/Fermé
GreggBazin
Messages postés
7
Date d'inscription
jeudi 8 juillet 2004
Statut
Membre
Dernière intervention
16 mai 2006
-
16 mai 2006 à 12:41
Alain42 - 24 juil. 2007 à 17:28
Alain42 - 24 juil. 2007 à 17:28
A voir également:
- Tableau dynamique php
- Tableau croisé dynamique - Guide
- Tableau word - Guide
- Tableau ascii - Guide
- Trier tableau excel - Guide
- Liste déroulante dynamique excel - Guide
5 réponses
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
606
16 mai 2006 à 15:00
16 mai 2006 à 15:00
Bjr
Voici un exemple de code PHP qui génère un tableau de taille paramètrable :
Je pense avoir mis suffisamment d'explications.
Le fonction generer_tableau() attend en paramètres le nombre de colonnes et le nombre de lignes
Elle retourne une chaîne contenant le code HTML nécessaire au tableau.
Nota :
$cr : permet d'ajouter des sauts de lignes dans le code pour le rendre plus propre lorsque tu visualises le code source de la page : il ne sert pas au code HTML proprement dit.
Voici un exemple de code PHP qui génère un tableau de taille paramètrable :
<html> <body> <?php function generer_tableau($col,$lig) { $cr = "\n"; // Initialise un nouveau tableau avec le code HTML requis : balise <table> $tableau = '<table border="1">'.$cr; for ($l = 0; $l < $lig ; $l++) { // Initialise une nouvelle ligne avec le code HTML requis : balise <tr> $ligne = '<tr>'; for ($c = 0; $c < $col ; $c++) { // Ajoute la colonne dans la ligne avec le code HTML requis : balise <td> .... </td> $ligne .= '<td>Lig '.$l.'-Col '.$c.'</td>'; } // Ferme la ligne avec le code HTML requis : balise </tr> $ligne .= '</tr>'.$cr; // Ajoute la ligne au tableau $tableau .= $ligne; } // Ferme le tableau avec le code HTML requis : balise </table> $tableau .= '</table>'.$cr; return $tableau; } // Récuperer le code HTML du tableau dans une variable $tableau = generer_tableau(10,20); // Afficher ce tableau ce qui l'ajoute à la page echo $tableau; ?> </body> </html>
Je pense avoir mis suffisamment d'explications.
Le fonction generer_tableau() attend en paramètres le nombre de colonnes et le nombre de lignes
Elle retourne une chaîne contenant le code HTML nécessaire au tableau.
Nota :
Ecrire $ligne .= '</tr>'.$cr; (attention au point devant le signe égal ) Revient au même que $ligne = $ligne.'</tr>'.$cr; (plus de point devant = !!!)
$cr : permet d'ajouter des sauts de lignes dans le code pour le rendre plus propre lorsque tu visualises le code source de la page : il ne sert pas au code HTML proprement dit.
GreggBazin
Messages postés
7
Date d'inscription
jeudi 8 juillet 2004
Statut
Membre
Dernière intervention
16 mai 2006
1
16 mai 2006 à 15:45
16 mai 2006 à 15:45
Excellent !!!!!!!!!!! Merci à toi, j'hallucine comme ça paraît simple quand on a le code sous les yeux ;-))
Et promis je persévère pour pouvoir coder très prochainement tout seul ;-)
Bonne continuation et merci encore !
Et promis je persévère pour pouvoir coder très prochainement tout seul ;-)
Bonne continuation et merci encore !
Re-bonjour, I'm back ;-)
Voilà en fait concernant ce tableau je voudrais savoir comment passer un paramètre PHP dans la ligne suivante :
$ligne .= '<td>Lig '.$l.'-Col '.$c.'</td>';
Car dans ma table j'ai les infos Lig1-Col1, Lig1-Col2, Lig2-Col1, etc... et donc je voudrais pouvoir faire un truc de ce genre :
<?php
// Affichage des articles
$retour = mysql_query('SELECT * FROM bali_hotels1 ORDER BY id');
while ($donnees = mysql_fetch_array($retour))
{
?>
...
<?php
...
$ligne .= '<td>$donnees['Lig '.$l.'-Col '.$c.'']</td>';
...
?>
Mais ça n'a pas trop l'air de marcher.... Message : Parse Error
Merci pour votre aide !
Voilà en fait concernant ce tableau je voudrais savoir comment passer un paramètre PHP dans la ligne suivante :
$ligne .= '<td>Lig '.$l.'-Col '.$c.'</td>';
Car dans ma table j'ai les infos Lig1-Col1, Lig1-Col2, Lig2-Col1, etc... et donc je voudrais pouvoir faire un truc de ce genre :
<?php
// Affichage des articles
$retour = mysql_query('SELECT * FROM bali_hotels1 ORDER BY id');
while ($donnees = mysql_fetch_array($retour))
{
?>
...
<?php
...
$ligne .= '<td>$donnees['Lig '.$l.'-Col '.$c.'']</td>';
...
?>
Mais ça n'a pas trop l'air de marcher.... Message : Parse Error
Merci pour votre aide !
estebanino
Messages postés
1
Date d'inscription
mardi 24 juillet 2007
Statut
Membre
Dernière intervention
24 juillet 2007
24 juil. 2007 à 16:44
24 juil. 2007 à 16:44
bonjour tout le monde!!
jai un soucis et je suis en speed dans mon stage j'ai besoin de vous
ca fait 2 jours entiers que j'apprend vba et je m'heurte a un peti soucis....
il faut créer un tableau dynamique qui puisse s'actualiser en fonction des sources que j'ai dans mon classeur
en fait jai créer une saisie pour lutilisateur qui choisit alors les fichiers a étudiés
et jaimerais que mon tableau s'actualise si je change les sources et il me lache dès que j'essaye....
merci d'avance car je sais ke pour vous c un jeu denfant.....
merci a tous
jai un soucis et je suis en speed dans mon stage j'ai besoin de vous
ca fait 2 jours entiers que j'apprend vba et je m'heurte a un peti soucis....
il faut créer un tableau dynamique qui puisse s'actualiser en fonction des sources que j'ai dans mon classeur
en fait jai créer une saisie pour lutilisateur qui choisit alors les fichiers a étudiés
et jaimerais que mon tableau s'actualise si je change les sources et il me lache dès que j'essaye....
merci d'avance car je sais ke pour vous c un jeu denfant.....
merci a tous
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
dans ma table j'ai les infos Lig1-Col1, Lig1-Col2, Lig2-Col1, etc...
Cela veut dire que Lig1-Col1 etc sont les noms des champs de ta table ou les infos contenues dans ta table.
Si nom des champs, essaye
$champ={"Lig".$l."Col".$c};
$ligne .= '<td>$donnees[$champ]</td>';
Mais comment incrémentes tu tes varaibles $l et $c ?
Cela veut dire que Lig1-Col1 etc sont les noms des champs de ta table ou les infos contenues dans ta table.
Si nom des champs, essaye
$champ={"Lig".$l."Col".$c};
$ligne .= '<td>$donnees[$champ]</td>';
Mais comment incrémentes tu tes varaibles $l et $c ?