[英]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.