Valeurs PHP $_POST manquantes de php://input
Malgré la réception des données du formulaire via une requête POST, certaines valeurs n'apparaissent pas dans le tableau PHP $_POST. Le débogage révèle la présence de ces valeurs dans la chaîne de requête brute récupérée via php://input.
Cause :
PHP modifie les noms de champs contenant des caractères spécifiques (espaces, points, crochets ouverts, etc.) pour se conformer aux Register_globals obsolètes.
Solution :
<code class="php">function getRealPOST() { $pairs = explode("&", file_get_contents("php://input")); $vars = array(); foreach ($pairs as $pair) { $nv = explode("=", $pair); $name = urldecode($nv[0]); $value = urldecode($nv[1]); $vars[$name] = $value; } return $vars; }</code>
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!