Вопрос

CakePhp Документация говорит, чтобы избежать CSRFАтаки необходимо включить компонент Security Component в контроллере, и, кроме того, создать форму, используя FormHelper .

В моем случае мне нужно создать несколько полей формы (например, текстура), используя JavaScript (jQuery) и их нельзя использовать для них formhelper.

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

И, конечно же, он не проходит безопасность, а форма не может быть представлена.

Есть ли в любом случае, я могу создать безопасную форму, создавая некоторые поля с помощью JavaScript?

спасибо.

Это было полезно?

Решение

Ну, один вариант, который у вас есть, - это разблокировать эти поля, чтобы они игнорируются в проверке безопасности.На ваш взгляд, напишите:

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

Другой вариант будет создавать поля формы, которые вы хотите динамически добавлять с помощником формы в скрытой области формы и только показать их при необходимости.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top