Rumah >pembangunan bahagian belakang >tutorial php >Mengapa tatasusunan $_POST saya kosong selepas penyerahan borang dalam PHP, dan bagaimana saya boleh membetulkannya?

Mengapa tatasusunan $_POST saya kosong selepas penyerahan borang dalam PHP, dan bagaimana saya boleh membetulkannya?

Linda Hamilton
Linda Hamiltonasal
2024-12-12 13:38:10576semak imbas

Why is my $_POST array empty after form submission in PHP, and how can I fix it?

Kosongkan $_POST Array Selepas Penyerahan Borang dalam PHP

Dalam Sistem Pengurusan Kandungan (CMS) tersuai, pengguna telah menghadapi isu di mana $ Tatasusunan _POST kekal kosong semasa penyerahan borang. Tingkah laku ini diperhatikan selepas memindahkan aplikasi ke pelayan pengeluaran. Walaupun data borang hadir dalam strim php://input, ia tiada dalam tatasusunan $_POST dan $_REQUEST.

Untuk menyelesaikan isu ini, adalah penting untuk menentukan pengepala jenis kandungan. Jika borang diserahkan dengan jenis kandungan JSON (aplikasi/json), PHP tidak akan mengisi tatasusunan $_POST. Ini kerana data JSON dikendalikan secara berbeza daripada data berkod bentuk biasa, yang biasanya dikendalikan melalui $_POST.

Untuk membetulkan isu, kod berikut boleh digunakan:

$_POST = json_decode(file_get_contents("php://input"), true);

Kod ini membaca data JSON daripada aliran php://input, menyahkodnya dan menyerahkannya kepada tatasusunan $_POST, dengan itu menjadikan data borang boleh diakses untuk pemprosesan selanjutnya.

Atas ialah kandungan terperinci Mengapa tatasusunan $_POST saya kosong selepas penyerahan borang dalam PHP, dan bagaimana saya boleh membetulkannya?. 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