首页 > 解决方案 > CakePHP 一些表单在提交时立即重定向而没有表单数据

问题描述

与一个已经运行了几年的网站合作,由许多不同的开发人员共同开发。在过去的一年里,它已经更新了好几次,并且在某些时候,一些后端表单已经开始失败。

查看网络流量,我可以看到表单正在发布(带有数据)并点击“302 Found”,然后立即重新发送到相同的 URL,请求方法被 GET 替换,并且没有附加数据。不会产生错误。

这是多个表单的问题,但不是所有表单。

我意识到这很模糊,我并不是在寻找“解决方案”,而是希望对要查看的内容和可以运行的测试提出建议。(目前的计划是简单地重建一个破损的表格,看起来希望一点点破坏它)。

编辑:看起来问题来自还允许您选择添加或编辑子记录的表单。

标签: cakephp-3.0

解决方案


如果有人遇到这个问题,它最终是用 Javascript 更改的隐藏字段。

似乎表单的安全性注意到该值已更改,然后只是忽略了提交,重新加载页面而没有输入。在某些情况下,只需在动态设置的任何字段上将 $this->Form->hidden 更改为 $this->Form->input 即可按预期提交表单。


推荐阅读