Pourquoi mes données JSON ne sont-elles pas reçues par PHP via Ajax ?

Barbara Streisand
Libérer: 2024-10-31 00:18:02
original
167 Les gens l'ont consulté

Why is my JSON data not being received by PHP via Ajax?

Envoi de données JSON vers PHP à l'aide d'Ajax

Problème :
Lors de la tentative d'envoi de données JSON à un Fichier PHP via Ajax, les données ne sont pas reçues et le tableau $_POST contient des valeurs vides.

Résolution :

Pour résoudre ce problème, le paramètre contentType dans le La requête Ajax doit être supprimée. L'option contentType est utilisée lors de l'envoi de données brutes au serveur, mais dans ce cas, les données sont déjà dans un format JSON valide. En le supprimant, le serveur gérera automatiquement correctement les données JSON.

De plus, les fonctions JSON.stringify et json_decode ne sont pas nécessaires dans ce contexte. Au lieu de cela, l'objet postData peut être utilisé directement comme charge utile de la requête.

Code Ajax mis à jour :

$.ajax({
  type: "POST",
  dataType: "json",
  url: "add_cart.php",
  data: {myData: postData},
  success: function(data){
    alert('Items added');
  },
  error: function(e){
    console.log(e.message);
  }
});
Copier après la connexion

Code PHP mis à jour :

if(isset($_POST['myData'])){
  $obj = $_POST['myData'];
  // Some PHP operation
}
Copier après la connexion

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!

source:php.cn
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