PHP est un langage de script largement utilisé, souvent utilisé pour la programmation côté serveur. Le traitement des données de formulaire soumises par les utilisateurs peut être facilement mis en œuvre à l'aide de PHP. Cependant, nous rencontrons parfois un tel problème : les données soumises dans le formulaire au format FormData ne peuvent pas être reçues dans le code PHP. Alors, comment résoudre ce problème ?
Tout d'abord, nous devons comprendre la méthode de soumission de formulaire au format FormData. FormData est une nouvelle API de création de données de formulaire, capable de gérer des formulaires contenant des types de données complexes tels que du texte, des fichiers, des données binaires, etc. Lorsque vous utilisez FormData pour soumettre des données de formulaire, vous devez utiliser la méthode POST.
Par exemple, nous pouvons utiliser le code suivant pour créer un objet FormData contenant du texte et des fichiers :
var formData = new FormData(); formData.append('name', 'Bob'); formData.append('file', fileInput.files[0]);
Où, 'name' est le nom de l'élément de formulaire, 'Bob' est sa valeur ; 'file' est le fichier ; Nom du contrôle de téléchargement, fileInput.files[0] correspond aux données du fichier. Vous pouvez utiliser l'objet XMLHttpRequest pour envoyer un objet FormData au serveur avant que le formulaire ne soit soumis.
En PHP, il n'y a généralement aucun problème à utiliser le tableau $_POST pour recevoir des données soumises par un formulaire. Toutefois, si le formulaire utilise le format FormData pour soumettre des données, vous devez utiliser le tableau $_FILES pour recevoir les données. Le tableau $_FILES contient des informations sur les fichiers téléchargés.
Par exemple, nous pouvons utiliser le code suivant pour recevoir les données soumises par FormData en PHP :
$name = $_POST['name']; $file = $_FILES['file'];
Parmi eux, $name est la valeur de l'élément de formulaire 'name' ; $file est les informations du fichier téléchargé.
S'il y a un problème de non-réception de FormData, vous pouvez essayer les solutions suivantes :
Résumé :
Pour recevoir les données soumises par FormData en PHP, vous devez utiliser le tableau $_FILES au lieu du tableau $_POST. S'il y a un problème de non-réception de FormData, vous devez vérifier l'en-tête de la demande de formulaire, la configuration PHP, la limite de taille du fichier de téléchargement, le chemin de téléchargement du fichier et d'autres paramètres.
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!