문제

CakePHP 설명서 는 CSRF를 피하기 위해 말합니다.공격 컨트롤러에 보안 구성 요소를 포함시키는 것이 필요하며 formhelper 을 사용하여 양식을 만듭니다.

내 경우에는 JavaScript (jQuery)를 사용하여 일부 양식 필드 (예 : TextArea)를 만들어야하며 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