symfony - pruebe - csrf_protection codeigniter
symfony2 CSRF no válido (3)
Bueno, hoy actualicé mi base de datos con nueva información de nuestra base de datos en vivo ... Y desde entonces he estado teniendo problemas en uno de mis formularios. Si necesita algún código, avísenme y lo editaré y publicaré el código necesario ...
Tengo un formulario de informe que tiene un campo de intervalo de fechas y un menú desplegable para un departamento de agentes. Cuando visito la página por primera vez, veo esto al principio del formulario:
The CSRF token is invalid. Please try to resubmit the form
Así que voy a uno de mis otros formularios que tiene el mismo tipo de información, y compruebo el _token y esto es lo que sale:
<input type="hidden" id="ecs_crmbundle_TimeClockReportType__token" name="ecs_crmbundle_TimeClockReportType[_token]" value="87e358fbc4d6d3e83601216b907a02170f7bcd92" />
<input type="hidden" id="ecs_crmbundle_SimpleSalesReportType__token" name="ecs_crmbundle_SimpleSalesReportType[_token]" value="87e358fbc4d6d3e83601216b907a02170f7bcd92" />
El primero es el que muestra el error, y SimpleSalesReport no ... ¿Alguna idea de por qué esto está haciendo esto o cómo puedo solucionarlo?
Gracias..
¡Este error me tenía loco por días! Gracias Krishna! Si en su plantilla de formulario elige no usar el comportamiento de formulario predeterminado {{ form_widget(form) }}
, DEBERÍA poner {{ form_rest(form) }}
Espero que esto pueda ayudar a cualquier otra persona!
¿Está utilizando por casualidad $ form-> bindRequest () en la acción que produce el error CSRF? Tuve este problema No deberías vincular la solicitud de un nuevo formulario. Si está publicando el formulario en la misma acción, ajuste bindRequest en un condicional que verifique si el método es POST:
if ($this->getRequest()->getMethod() == ''POST'') {
$form->bindRequest($this->getRequest());
if ($form->isValid()) {
...
}
}
No hay problema con {{ form_widget(form) }}
para crear su formulario personalizado. Todo lo que tienes que hacer es agregar la _token
así: {{ form_widget(form._token) }}