Faire un tableau avec plusieurs lignes et plusieurs colonnes

Résolu/Fermé
philippef - 16 oct. 2015 à 10:31
tatsuyad Messages postés 74 Date d'inscription mercredi 3 juin 2015 Statut Membre Dernière intervention 3 avril 2016 - 2 nov. 2015 à 06:35
Bonjour,
j'essaie de faire un tableau de 7 colonnes et 4 lignes mais ça marche pas !!

<?php
echo '<table border=1 style="border-collapse:collapse" CELLPADDING=3 CELLSPACING=0><tr>';
for ($i=1; $i<20; $i++) {
if ($i<8){
if ($i <8){
echo '<td >' , $i , '</td>';
} else if ($i =7){
echo '<td >' , $i , '</td></tr>';
}
}
}
echo '</tr></table>';

Complément : dans 6 premières cellules de chaque ligne je vais appeler une fonction javascript mais pas dans la 7è.

Donc si quelqu'un peut m'aider, merci d'avance
A voir également:

7 réponses

Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 525
16 oct. 2015 à 10:37
Salut,

Voici une solution possible :
echo '<table>';
for ($ligne = 1; $ligne <= 4; $ligne++) {
    echo '<tr>';
    for ($colonne = 1; $colonne <= 7; $colonne++) {
        echo '<td>Ligne ' . $ligne . ' Colonne  ' . $colonne . '</td>';
    }
    echo '</tr>';
}
echo '</table>';


Bonne journée
0
Merci pour la réponse. C'est presque ça.
Le résultat que je dois avoir :

1 2 3 4 5 6 7
8 9 10 11 12 13 14
.....
22 23 24 25 26 27 28

Et comme je l'ai dit je dois appeler une fonction javascript dans les 6 premières cellules de chaque ligne sauf pour la dernière cellule de chaque ligne (7,14,21,28).

Merci
0
codeurh24 Messages postés 760 Date d'inscription samedi 29 mars 2014 Statut Membre Dernière intervention 8 septembre 2018 123
16 oct. 2015 à 23:18
salut.

$colonnes = 7;
$lignes = 4;
echo '<table border=1 style="border-collapse:collapse" CELLPADDING=3 CELLSPACING=0>';

for($i=1; $i < $lignes+1; $i++)
{
echo '<tr>';
for($j=1; $j < $colonnes+1; $j++)
{
if( $j%7)
echo '<td onclick="alert(\'test fonction\')">' , $i.$j , '</td>';
else
echo '<td>' , $i.$j , '</td>';
}
echo '</tr>';

}

echo '</table>';
0
Merci pour vos réponses.
Vous aurez compris que les boucles ne sont pas mon fort.
Pour la réponse de Codeurh24, le tableau ne commence qu'à 11 et les ligne suivante commencent avec un décalage de 4.

ce qui donne :
11 12 13 14 15 16 17
21 22 23 24 25 26 27
31 32 33 34 35 36 37
41 42 43 44 45 46 47

Le tableau devrait être
1 2 3 4 5 6 7
8 9 10 11 12 13 14
14 16 17 18 19 20 21
22 23 24 25 26 27 28

merci d'avance
0
codeurh24 Messages postés 760 Date d'inscription samedi 29 mars 2014 Statut Membre Dernière intervention 8 septembre 2018 123
25 oct. 2015 à 02:51
je n'ais pas compris
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Ce que je veux dire c'est qu'avec ce code

$colonnes = 7;
$lignes = 4;
echo '<table border=1 style="border-collapse:collapse" CELLPADDING=3 CELLSPACING=0>';

for($i=1; $i < $lignes+1; $i++)
{
echo '<tr>';
for($j=1; $j < $colonnes+1; $j++)
{
if( $j%7)
echo '<td onclick="alert(\'test fonction\')">' , $i.$j , '</td>';
else
echo '<td>' , $i.$j , '</td>';
}
echo '</tr>';

}

echo '</table>';

j'obtiens cela :
11 12 13 14 15 16 17
21 22 23 24 25 26 27
31 32 33 34 35 36 37
41 42 43 44 45 46 47


ce que je voudrai c'est :
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28


J'ai essayer plusieurs modifs sans obtenir de résultats !!
0
tatsuyad Messages postés 74 Date d'inscription mercredi 3 juin 2015 Statut Membre Dernière intervention 3 avril 2016
2 nov. 2015 à 06:33
j'obtiens cela :
11 12 13 14 15 16 17
21 22 23 24 25 26 27
31 32 33 34 35 36 37
41 42 43 44 45 46 47






<?
$i=0;
echo $i;
for($i=1;$i<5;$i++){
for($j=1;$j<8;$j++){
echo $j+$i*10;
}
echo '\n';
}
?>








Il y en a mieux que cela ?
0
codeurh24 Messages postés 760 Date d'inscription samedi 29 mars 2014 Statut Membre Dernière intervention 8 septembre 2018 123
26 oct. 2015 à 17:55
<?php

$colonnes = 7;
$lignes = 4;
$compteur = 0;

echo '<table border=1 style="border-collapse:collapse" CELLPADDING=3 CELLSPACING=0>';

for($i=1; $i < $lignes+1; $i++)
{
echo '<tr>';
for($j=1; $j < $colonnes+1; $j++)
{
$compteur++;

if( $j%7)
echo '<td onclick="alert(\'test fonction\')">' . $compteur . '</td>';
else
echo '<td>' . $compteur . '</td>';
}
echo '</tr>';

}

echo '</table>';

?>
0
tatsuyad Messages postés 74 Date d'inscription mercredi 3 juin 2015 Statut Membre Dernière intervention 3 avril 2016
2 nov. 2015 à 06:35
Dis, je n'aime pas multiplier des variables !
0
Merci, c'est tout à fait ça
0