Pergunta

Documentação do CakePHP diz que para evitar ataques CSRF é necessário incluir o Segurança componente no controlador e, além disso, criar o formulário usando o FormHelper.

No meu caso, preciso criar alguns campos de formulário (como uma área de texto) usando JavaScript (jQuery) e por isso não posso usar o FormHelper para eles.

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

E claro, não passa na segurança e o formulário não é enviado.

Existe alguma maneira de criar um formulário seguro criando alguns campos com JavaScript?

Obrigado.

Foi útil?

Solução

Bem, uma opção que você tem é desbloquear esses campos para que sejam ignorados na verificação de segurança.Na sua opinião, escreva:

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

Outra opção seria criar os campos do formulário que deseja adicionar dinamicamente com o auxiliar Formulário em uma área oculta do formulário e mostrá-los apenas se necessário.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top