【发布时间】:2011-10-15 07:48:42
【问题描述】:
我在 Codeigniter 中启用了 csrf 保护。使用form_open()我能够产生一个隐藏的csrf值,应该在我的控制器中进行验证。但是,我没有提交任何输入字段,而只是通过表单操作传递了一个 url 参数。
在我的控制器中,我不需要设置验证规则,所以我有
function delete_post($post_id = '') //post id passed via 3rd URL segment
{
if (is_int($post_id) && valid_post($post_id)) //valid_post() returns true if post id exists
{
$this->Posts_model->delete_post_model($post_id);
redirect('site');
}
}
如果没有验证规则,Csrf 保护似乎不起作用。是否可以在不通过隐藏输入传递post_id 的情况下完成这项工作?
【问题讨论】:
标签: php forms validation codeigniter csrf