Rumah  >  Artikel  >  hujung hadapan web  >  AngularJS ke PHP POST: Mengapa pembolehubah saya tidak ditentukan?

AngularJS ke PHP POST: Mengapa pembolehubah saya tidak ditentukan?

Linda Hamilton
Linda Hamiltonasal
2024-11-23 20:07:18688semak imbas

AngularJS to PHP POST: Why are my variables undefined?

AngularJS HTTP Post to PHP: Undefined Variable Issue

Perihalan Masalah:

Apabila melaksanakan permintaan HTTP POST daripada AngularJS kepada skrip PHP, skrip PHP menerima nilai yang tidak ditentukan untuk borang yang disiarkan data.

Punca:

AngularJS lalai pengepala Jenis Kandungan untuk permintaan HTTP Post kepada aplikasi/json. Walau bagaimanapun, kod sampel dalam soalan menetapkan pengepala Jenis Kandungan kepada application/x-www-form-urlencoded. Akibatnya, data yang dihantar oleh AngularJS tidak berada dalam format yang dijangkakan untuk kefungsian $_POST PHP.

Penyelesaian 1:

Gunakan pengepala Jenis Kandungan AngularJS lalai of application/json dan baca input mentah dalam PHP, kemudian deserialize the JSON.

$postdata = file_get_contents("php://input");
$request = json_decode($postdata);
$email = $request->email;
$pass = $request->password;

Penyelesaian 2:

Jika bergantung pada fungsi $_POST, bentuk rentetan pertanyaan daripada data dan hantarkannya sebagai badan permintaan, pastikan bahawa rentetan pertanyaan dikodkan URL.

data = "email=" + encodeURIComponent($scope.email) + "&password=" + encodeURIComponent($scope.password);

Atas ialah kandungan terperinci AngularJS ke PHP POST: Mengapa pembolehubah saya tidak ditentukan?. 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