Maison >développement back-end >tutoriel php >Comment créer et gérer une entrée de tableau dans des formulaires HTML/PHP ?
Saisie sous forme de tableau dans les formulaires HTML/PHP
Lors de la création de formulaires en HTML qui reçoivent une entrée de l'utilisateur, il existe des cas où vous souhaiterez peut-être collecter des données dans une structure de tableau. Cet article explique comment y parvenir à l'aide des noms d'entrée PHP.
Scénario :
Considérez un formulaire qui comprend plusieurs paires de champs de saisie, où chaque paire est constituée d'un niveau et build_time. La sortie souhaitée est un tableau avec chaque paire stockée sous forme de sous-tableau, ressemblant à ce qui suit :
Array ( [1] => Array ( [level] => 1 [build_time] => 123 ) [2] => Array ( [level] => 2 [build_time] => 456 ) )
Première approche :
Initialement, le formulaire utilisait des noms de champs statiques , tel que name="levels[level]", ce qui a donné le résultat suivant :
[levels] => Array ( [0] => Array ( [level] => 1 ) [1] => Array ( [build_time] => 234 ) [2] => Array ( [level] => 2 ) [3] => Array ( [build_time] => 456 ) )
Corrigé Approche :
Pour obtenir le format de sortie souhaité, les crochets doivent être ajoutés à la fin des noms d'entrée, comme indiqué ci-dessous :
<input type="text" class="form-control" placeholder="Titel" name="levels[level][]"> <input type="text" class="form-control" placeholder="Titel" name="levels[build_time][]">
Avec cette approche révisée, PHP regroupera les valeurs d'entrée dans des sous-tableaux en fonction de la présence des crochets. La structure du tableau résultant s'alignera sur le format attendu.
Ajout dynamique de champs de saisie :
Cette approche corrigée permet l'ajout dynamique de champs de saisie, éliminant ainsi le besoin de spécifier indices dans les éléments du formulaire. PHP les organisera automatiquement sous forme de sous-tableaux, offrant un moyen pratique et flexible de collecter des données.
Utilisation :
Pour récupérer les valeurs individuelles, utilisez simplement la syntaxe du tableau PHP :
echo $levels["level"][5]; // Retrieves the 6th level echo $levels["build_time"][5]; // Retrieves the corresponding build time
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!