0

我将一些用于注册的表单值发布到 cakePHP 控制器操作中。代码是这样的

var params='firstname='+encodeURIComponent(firstname) +'&lastname='+encodeURIComponent(lastname)+'&emailid='+encodeURIComponent(emailid)+'&password='+encodeURIComponent(password);

xmlhttp.open('POST', url, true);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.send(params);

这是在发帖,我可以在 POST 部分源的 Firebug 中看到它

firstname=name&lastname=name&emailid=mymailid&password=123123

但是当我在 action 中打印 $this->data 时,它没有显示任何值。我什至使用过 $_POST 它也返回任何东西..

我在这里做错了什么..?

4

2 回答 2

0

try in controller like following:

$this->params['url']; // this will give an array of parameters

Or, $this->request['url']; // this will give an array of parameters

于 2012-04-23T14:02:28.560 回答
0

您缺少使用 POST 发送变量时所需的请求标头:

试试这个:

var params='firstname='+encodeURIComponent(firstname) +'&lastname='+encodeURIComponent(lastname)+'&emailid='+encodeURIComponent(emailid)+'&password='+encodeURIComponent(password);

xmlhttp.open('POST', url, true);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.setRequestHeader("Content-length", params.length);
xmlhttp.send(params);
于 2012-04-23T13:47:50.573 回答