在cakephp 3中,我在POST数据中收到了错误的意外字段

时间:2017-07-19 08:33:25

标签: cakephp-3.2

在cakephp 3中,我在POST数据中收到了错误的意外字段。 实际上该字段不在我的表中,但我想在控制器中使用。

2 个答案:

答案 0 :(得分:6)

CakePHP中的安全组件并不宽容。如果您希望允许不应通过安全组件散列过程的字段,则需要使用unlockedField类附带的FormHelper方法:

$this->Form->unlockField('field');

如果这不起作用,您需要向我们提供相关代码

答案 1 :(得分:0)

我在cakephp 3.4中遇到了类似的错误我正在使用简单的html表单和输入字段。我在数组中传递输入字段数据。如下: -

<form action="" method="post">    
<input name="data[1][category_1]" id="category_1">
</form>

然后我做了一些R&amp; D,发现我们需要使用cakephp表单助手来创建表单及其字段,如下所示: -

如果在数组中传递表单数据

<?= $this->Form->create($user, ['url' => ['controller' => 'Users', 'action' => 'saveOrder']]); ?>
    <?= $this->Form->input("Data.1.category_1"); ?>
<?= $this->Form->end() ?>

如果是简单的输入字段,您可以执行以下代码

<?= $this->Form->create($user, ['url' => ['controller' => 'Users', 'action' => 'saveOrder']]); ?>
    <?= $this->Form->input("category"); ?>
<?= $this->Form->end() ?>

这项工作形成了我并解决了cakephp 3.4

中POST数据中的错误Unexpected字段