Apabila menyerahkan borang AngularJS menggunakan $http.post(), pembolehubah diterima oleh PHP skrip mungkin kelihatan sebagai tidak ditentukan, walaupun menerima 200 OK respons.
Secara lalai, AngularJS menetapkan pengepala Content-Type kepada aplikasi/json untuk permintaan HTTP POST. Walau bagaimanapun, jika muatan berkod borang dihantar dan bukannya data JSON, PHP tidak akan mengisi tatasusunan $_POST seperti yang dijangkakan.
Terdapat dua penyelesaian utama:
Gunakan JSON Lalai Pengepala:
Hantar Borang-Dikodkan Data:
Untuk penyelesaian kedua:
$query_string = file_get_contents("php://input"); parse_str($query_string, $data); $email = $data['email']; $password = $data['password'];
Atas ialah kandungan terperinci Mengapa pembolehubah AngularJS $http.post() saya tidak ditentukan dalam skrip PHP saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!