获取并发布cakephp

时间:2012-03-07 08:33:37

标签: php cakephp cakephp-1.3 cakephp-2.0

在Codeigniter中我这样做

$p=$this->input->post();

发布所有对象,但我不知道cakephp中是否有类似的东西可以从表单中获取所有发布的变量?我正在编写一个函数来获取发布的密码并将其保存到数据库中,而不是记录在那里的旧密码。

我使用原生php从表单中获取“发布”变量,(我不熟悉cakephp表单用法)这就是原因,所以我现在该怎么做而不是使用$ _POST ['sssss']?

感谢您的帮助。

7 个答案:

答案 0 :(得分:13)

$value = $this->request->data('key');

请进一步参考,请阅读手册。对自己来说,自己解决这个问题要容易得多。

http://book.cakephp.org/2.0/en/controllers/request-response.html#accessing-post-data

答案 1 :(得分:6)

 for the GET method 
 $this->request->query['category-name'];

 and POST method 
 $this->request->data
  

http://book.cakephp.org/2.0/en/controllers/request-response.html#accessing-querystring-parameters

答案 2 :(得分:2)

发布数据必须包含在$ this-> request->数据中的数据中。

示例:

// input field
<input type="text" name="data[foo]" value="bar" />

// in your controller
debug($this->request->data);

答案 3 :(得分:2)

您可以使用

检查是否发布了表单
if (!empty($this->data)) {
  print_r($this->data);
}

答案 4 :(得分:2)

要检查是否发布了表单,请使用:

if ($this->request->is('post')) {
    pr($this->request->data);
}

答案 5 :(得分:2)

如果你想获得表格的特定字段,可以这样移动:

if($this->data["Objetorastreavel"]["id"]){
}

如果您只想选择一个字段而不发布整个页面,则仅检查ID Objetorestraeval

答案 6 :(得分:1)

您应该可以使用以下方式访问表单发布数据:

对于CakePHP 2.x

if ($this->request->is('post')) {
    pr($this->request->data);
}

对于CakePHP 3.4.x

if ($this->request->is('post')) {
    pr($this->request->getData());
}

Documentation for CakePHP 3