Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menyahkod Data JSON dari Ajax dalam PHP?

Bagaimana untuk Menyahkod Data JSON dari Ajax dalam PHP?

DDD
DDDasal
2024-10-31 05:03:30485semak imbas

How to Decode JSON Data from Ajax in PHP?

Menyahkod Data JSON daripada Ajax dalam PHP

Apabila cuba menghantar data JSON daripada permintaan Ajax kepada skrip PHP, anda mungkin menghadapi isu di mana data tidak diterima atau dihuraikan dengan betul. Untuk menyelesaikan masalah ini, soalan biasa ialah cara menghantar data JSON daripada Ajax dengan berkesan dan menyahkodnya dalam PHP.

Penyelesaian

1. Alih Keluar Pengepala Jenis Kandungan

Dalam permintaan Ajax, alih keluar pengepala ContentType:

$.ajax({
    type: "POST",
    dataType: "json",
    url: "add_cart.php",
    data: {myData:dataString}
});

2. Gunakan Tugasan Pembolehubah Terus

Dalam PHP, akses data JSON terus daripada $_POST tanpa menggunakan json_decode:

if(isset($_POST['myData'])){
    $obj = $_POST['myData'];
    //some php operation
}

Reason

Sebab kod asal tidak berfungsi adalah kerana pengepala contentType telah ditetapkan kepada application/json. Ini menunjukkan kepada PHP bahawa data yang dihantar adalah dalam format JSON, yang tidak berlaku. Data sebenarnya adalah pertanyaan POST biasa yang mengandungi rentetan JSON.

Dengan mengalih keluar pengepala ContentType, anda menghantar data sebagai pertanyaan POST biasa dan membenarkan PHP mengendalikan penukaran rentetan secara automatik.

Atas ialah kandungan terperinci Bagaimana untuk Menyahkod Data JSON dari Ajax dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn