[英]PHP Post Values undefined
當我嘗試從php類獲取POST值時,它始終返回“未定義的變量”
但是,如何將其定義不確定,我真的沒有得到它!!!
這是我的POST數據
這是我的回復數據
這是我的PHP代碼-
class sendMailController extends Controller {
protected function init() {
$this->saveDataAction();
}
public function saveDataAction() {
if($_SERVER["REQUEST_METHOD"]=='POST'){
$_POST['name'] = $name;
$_POST['email'] = $email;
$_POST['message'] = $msg;
print_r($name);
}
}
}
這是我的劇本-
<script>
$(document).ready(function () {
$("#myForm").on('submit', function (e) {
var data = {};
data['name'] = $("#name").val();
data['email'] = $("#email").val();
data['message'] = $("#message").val();
$.ajax({
url: '/mvc/sendmail',
type: 'post',
data: data,
success: function (returnedData) {
}
});
return false;
});
});
</script>
有誰知道我在哪里犯錯! 請真的需要一些建議
您正在做反向分配,這是正確的
class sendMailController extends Controller {
protected function init() {
$this->saveDataAction();
}
public function saveDataAction() {
if($_SERVER["REQUEST_METHOD"]=='POST'){
$name = $_POST['name'] ;
$email = $_POST['email'] ;
$msg = $_POST['message'] ;
print_r($name);
}
}
}
這是錯誤的: $_POST['name'] = $name
。 您將未定義變量 $name
的值分配給post元素$_POST['name']
。 在所有編程語言中,賦值始終是向左變量賦的右值。 您需要像這樣反轉它: $name = $_POST['name']
;
我相信不要像這樣使用“ $ _POST”來嘗試使用---
class sendMailController extends Controller {
protected function init() {
$this->saveDataAction();
}
public function saveDataAction() {
$request = $this->getRequest();
if ($request->getMethod() == 'POST') {
$name = $request->request->get('name');
$email = $request->request->get('email');
$message = $request->request->get('message');
}
}
}
我相信這是獲取POST值的更好做法
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.