Maison > développement back-end > tutoriel php > Comment décoder les données JSON d'Ajax en PHP ?

Comment décoder les données JSON d'Ajax en PHP ?

DDD
Libérer: 2024-10-31 05:03:30
original
564 Les gens l'ont consulté

How to Decode JSON Data from Ajax in PHP?

Décodage des données JSON d'Ajax en PHP

Lorsque vous essayez d'envoyer des données JSON à partir d'une requête Ajax vers un script PHP, vous pouvez rencontrer un problème où les données ne sont pas correctement reçues ou analysées. Pour résoudre ce problème, une question courante est de savoir comment envoyer efficacement des données JSON depuis Ajax et les décoder en PHP.

Solution

1. Supprimer l'en-tête Content-Type

Dans la requête Ajax, supprimez l'en-tête contentType :

$.ajax({
    type: "POST",
    dataType: "json",
    url: "add_cart.php",
    data: {myData:dataString}
});
Copier après la connexion

2. Utiliser l'affectation directe de variables

En PHP, accédez aux données JSON directement depuis $_POST sans utiliser json_decode :

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

Raison

La raison pour laquelle le code d'origine ne fonctionnait pas est que l'en-tête contentType était défini sur application/json. Cela indiquait à PHP que les données envoyées étaient au format JSON, ce qui n'est pas le cas. Les données sont en fait une requête POST normale qui contient une chaîne JSON.

En supprimant l'en-tête contentType, vous envoyez les données sous forme de requête POST normale et permettez à PHP de gérer automatiquement la conversion de chaîne.

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