bonjour
j'aimerais rendre chaque élément de mon tableau cliquable pour les insérer ensuite via une variable dans un champ de formulaire et les rediriger dans ma bdd.
Voir tableau ci-joint.
Merci pour votre aide
bonjour
j'aimerais rendre chaque élément de mon tableau cliquable pour les insérer ensuite via une variable dans un champ de formulaire et les rediriger dans ma bdd.
Voir tableau ci-joint.
Merci pour votre aide
Utilise des liens.
Bonjour,
Pour le mettre dans un tableau, tu fais une boucle pour les balises td et un modulo pour tr selon le nombres d'éléments que tu veux afficher par ligne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <a href="page.php?element=1">1</a> <a href="page.php?element=2">2</a>
Merci pour tes réponses
Et tu crois que c'est possible avec un array comme celui-ci ?
Comment récupérer chaque valeur de l'array pour les mettre dans des balises <td> ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part $place = Array(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, 29, 30, 31, 32, 35, 37, );
Re,
Tu le parcours avec une boucle foreach.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 echo "<tr>\n"; $i=1; foreach($page as=> $element) { if (($i%10)==0){echo "</tr>\n<tr>";} echo "<td><a href=page.php?element=".$element.">".$element."</a></td>\n"; } echo "</tr>\n";
Code : Sélectionner tout - Visualiser dans une fenêtre à part $place = range(1, 37);![]()
Ca a fonctionné, mais j'ai retiré le signe 'associé à' (=>), sinon j'avais une erreur. C'est probablement du au fait que j'ai un tableau à clés numériques et non un tableau associatif.
Donc j'ai bien mes liens, super. Merci.
Mais, il y a un mais, je perds ma belle mise en page.
J'ai essayé de fouiner pour intégrer la boucle foreach au code que j'avais, mais je n'arrive pas à retrouver ma mise en page.
Peux tu encore m'aider ?
Le mieux je pense c'est que j'affiche la source.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83 <?php // Auteur: J-Pierre DEZELUS // 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 = 17; // 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 = 0; $place = Array(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, 29, 30, 31, 32, 35, 37, ); $nb_total = sizeof($place); // 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 "<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) ? $place[$cpt] : ''; if ($col == 1) $ligne[$lig] = "<TR BGCOLOR='#DADADA'>"; $ligne[$lig] .= "<TD> ".$valeur." </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) ? $place[$cpt] : ''; if ($col == 1) echo "<TR BGCOLOR='#DADADA'>"; echo "<TD> ".$valeur." </TD>"; if ($col == $nbcol) echo "</TR>\n\n"; } } echo "<tr>\n"; $i=1; $place = range(1,37); foreach($place as $element) { if (($i%10)==0){echo "</tr>\n<tr>";} echo "<td><a href=saisie2.php?element=".$element.">".$element."</a></td>\n"; } echo "</tr>\n"; echo "</TABLE>\n"; ?>
C'est bon, j'ai trouvé la solution de mise en forme.
Merci pour tout.
Partager