Bonjour,
En vue d'une standardisation de mon code, je l'ai modifié. J'ai voulu revenir en arrière, mais j'ai oublié de sauvegarder un fichier.
Voici un extrait des portions de codes actuels:
Contrôleur de base 'settings.php' (extrait):Fichier vue conteneur 'setCommons.php':
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 // ... Début inchangé ... // Selecting tab documents switch ($iCurrentTab){ case 1: default: $subForm = "views/$language/setVarious.php"; break; case 2: case 3: case 4: case 5: $subForm = "views/$language/setCommons.php"; break; case 6: $subForm = "views/$language/setRights.php"; break; } // Init variable forms $echo['settings']['forms'] = []; switch ($iCurrentTab){ case 1:{ // various = default language + default country // code inchangé break;} case 2:{ // users (pour l'exemple) // Partie inchangée $inData = getUsersOfSubscriber($nSubscriberId); if (!empty($inData)){ foreach($inData as $key=>$aSingle){ $post[$key] = $aSingle; // Partie modifiée // Set buttons $aButtons = []; // Buttons for each childform $aButtons[] = sprintf("<input type='submit' name='saveElem' value='%s'>", getDBText($language,72)); $aButtons[] = sprintf("<input type='submit' name='delElem' value='%s'>", getDBText($language,73)); $aButtons[] = sprintf("<input type='submit' name='password' value='%s'>", getDBText($language,140)); $echo[$key]['btns'] = implode(' ', $aButtons); // Labels $aLabels = []; $aLabels[] = getDBText($language,131); // ... autres valeurs pour aLabels // Fieldvalues $banned = (!empty($aSingle['banned'])) ? ' checked': ''; $aFields = []; $aFields[] = "<input type='text' name='{$key}[id]' value='{$aSingle['id']}' readonly>"; // ... autres valeurs pour aFields for ($i=0, $max=count($aLabels); $i<$max; $i++){ $aConcat[] = "<label><span>{$aLabels[$i]}</span>{$aFields[$i]}</label>"; } unset($i); $echo[$key]['fields'] = implode('<br>', $aConcat); // Include viewform require("views/$language/setUser.php"); } unset($key,$aSingle); } break;} // Autres valeurs non encore codées }Fichier vue sous formulaire 'setUser.php':
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <form method="post" action="frontend/settingCommonNew.php?tab=<?= $iCurrentTab; ?>"> <p style="padding-left:10px;"><input type="submit" name="newElem" value="<?= getDBText($language,121); ?>"></p> </form> <hr> <?php foreach ($echo['settings']['forms'] as $form) { echo trim($form); } unset($form); ?>
Et j'ajoute ci-dessous l'mage du résultat. Dans cette image je ne devrais avoir que la partie sous le dernier trait horizontal actuel, mais je devrais bien avoir sous chaque champ les boutons et la balise <hr>.
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 <?php var_dump($key); // affiche 0, 1, 2, 3 ob_start(); ?> <form method="post" class="settings" action="frontend/settings.php"> <?= $echo[$key]['fields']; ?> <p> <?= $echo[$key]['btns']; ?> </p> </form> <hr> <?php $echo['settings']['forms'][] = trim(ob_get_clean()); ?>
Partager