Maison >développement back-end >tutoriel php >Pourquoi \'contentType:False\' provoque-t-il une erreur \'Index non défini\' en PHP lors de la soumission d'un formulaire Multipart/form-data avec jQuery AJAX ?
Soumission de formulaire Jquery/Ajax (enctype="multipart/form-data") : Pourquoi 'contentType:False' provoque un index non défini en PHP
Problème :
Lors de l'utilisation de Jquery/ajax pour soumettre un formulaire avec "enctype='multipart/form-data'" (pour les téléchargements de fichiers), la définition de "contentType:False" provoque une erreur "Index non défini" en PHP.
Réponse :
Pourquoi "contentType:False" est nécessaire pour les soumissions "multipart/form-data"
"contentType:False" empêche jQuery d'ajouter l'en-tête "Content-Type" à la requête. Dans les soumissions « multipart/form-data », l'en-tête « Content-Type » inclut une chaîne de limite, essentielle pour le codage en plusieurs parties.
De plus, « processData:False » doit également être défini sur false pour éviter jQuery de convertir l'objet "FormData" en chaîne, ce qui perturberait l'encodage en plusieurs parties.
Dépannage :
Pour résoudre ce problème, envisagez les étapes suivantes :
<code class="javascript">var formData = new FormData($(this)[0]);</code>
Remarques supplémentaires :
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!