Maison > développement back-end > tutoriel php > Pourquoi l'utilisation de `enctype='text/plain'` avec les requêtes POST provoque-t-elle des problèmes en PHP ?

Pourquoi l'utilisation de `enctype='text/plain'` avec les requêtes POST provoque-t-elle des problèmes en PHP ?

Mary-Kate Olsen
Libérer: 2024-12-24 06:09:22
original
640 Les gens l'ont consulté

Why Does Using `enctype=

"method="post" enctype="text/plain": Un problème de compatibilité

Lors de l'utilisation de l'élément de formulaire avec les deux méthodes = "post" et enctype="text/plain", les utilisateurs peuvent rencontrer des problèmes de transmission de données vers le fichier PHP spécifié. En effet, PHP ne prend pas en charge la gestion de l'encodage texte/plain pour le POST. data.

Pourquoi l'encodage texte/plain est-il problématique ?

Les valeurs valides pour enctype incluent application/x-www-form-urlencoded et multipart/form-data. le premier est la valeur par défaut pour les requêtes POST, tandis que le second est utilisé lors du téléchargement de fichiers.

Lorsque l'encodage texte/plain est utilisé avec POST, PHP stocke le brut données du formulaire dans la variable $HTTP_RAW_POST_DATA au lieu de remplir le tableau $_POST. Cela peut entraîner des incohérences et des ambiguïtés dans l'accès aux valeurs du formulaire.

Exemple

Considérez le formulaire suivant. :

<form method="post" enctype="text/plain" action="proc.php">
  <textarea name="input1">abc
input2=def</textarea>
  <input name="input2" value="ghi" />
  <input type="submit">
</form>
Copier après la connexion

Dans le PHP correspondant file:

print($HTTP_RAW_POST_DATA);
Copier après la connexion

Résultat:

input1=abc
input2=def
input2=ghi
Copier après la connexion

Comme vu ci-dessus, il est impossible de différencier les valeurs de input1 et input2, car elles peuvent être soit input1 =abcrninput2=def, input2=ghi ou input1=abc, input2=defrninput2=ghi.

Contrairement aux requêtes POST, les requêtes GET encodent toujours en URL la chaîne de requête, même si enctype="text/plain" est spécifié. En effet, les variables font partie de l'URL elle-même.

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 de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal