Soumission de champs de formulaire avec des attributs de nom en double
Question :
Lors de la soumission d'un formulaire contenant plusieurs champs de saisie de texte avec le même attribut de nom, toutes les valeurs de champ peuvent-elles toujours être récupérées du tableau $_POST dans PHP?
Réponse :
Non, seule la valeur du dernier élément d'entrée portant le même nom sera stockée dans le tableau $_POST.
Raison :
PHP remplit le tableau $_POST en éclatant la chaîne de requête brute en paires nom-valeur individuelles. Lorsqu'il rencontre plusieurs paires nom-valeur portant le même nom, il écrase la valeur précédente par la nouvelle.
Alternatives :
Pour gérer plusieurs entrées avec le même name :
Analyse de la Chaîne de requête brute :
Si vous utilisez la chaîne de requête brute, vous pouvez l'analyser manuellement à l'aide d'un script similaire à :
$post = array(); foreach (explode('&', file_get_contents('php://input')) as $keyValuePair) { list($key, $value) = explode('=', $keyValuePair); $post[$key][] = $value; }
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!