Maison >développement back-end >tutoriel php >Pourquoi mon tableau $_POST est-il vide après la soumission du formulaire en PHP et comment puis-je y remédier ?

Pourquoi mon tableau $_POST est-il vide après la soumission du formulaire en PHP et comment puis-je y remédier ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-12 13:38:10592parcourir

Why is my $_POST array empty after form submission in PHP, and how can I fix it?

Tableau $_POST vide après la soumission du formulaire en PHP

Dans un système de gestion de contenu (CMS) personnalisé, les utilisateurs ont rencontré un problème où $ Les tableaux _POST restent vides lors de la soumission du formulaire. Ce comportement est observé après la migration de l'application vers un serveur de production. Bien que les données du formulaire soient présentes dans le flux php://input, elles sont absentes dans les tableaux $_POST et $_REQUEST.

Pour résoudre ce problème, il est crucial de déterminer les en-têtes de type de contenu. Si le formulaire est soumis avec un type de contenu JSON (application/json), PHP ne remplira pas le tableau $_POST. En effet, les données JSON sont traitées différemment des données codées sous forme de formulaire typiques, qui sont normalement gérées via $_POST.

Pour résoudre le problème, le code suivant peut être utilisé :

$_POST = json_decode(file_get_contents("php://input"), true);

Ce code lit les données JSON du flux php://input, les décode et les affecte au tableau $_POST, rendant ainsi les données du formulaire accessibles à d'autres utilisateurs. traitement.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn