2

CakePHP 文档说要避免 CSRF 攻击,必须在控制器中包含Security组件,此外,使用FormHelper创建表单。

就我而言,我需要使用 JavaScript (jQuery) 创建一些表单字段(例如 textarea),因此我不能为它们使用 FormHelper。

$('#body').html('<textarea name="data[post][body]" type="textarea" cols="30" rows="3">'+text+'</textarea>');

当然,它没有通过安全性并且表单无法提交。

无论如何,我可以创建一个安全的表单,使用 JavaScript 创建一些字段吗?

谢谢。

4

1 回答 1

3

好吧,您有一个选择是解锁这些字段,以便在安全检查中忽略它们。在你看来,写:

<?php $this->Form->unlockField('fieldname'); ?>

另一种选择是使用表单助手在表单的隐藏区域中创建要动态添加的表单字段,并仅在需要时显示它们。

于 2012-10-03T11:43:41.467 回答