【发布时间】:2012-02-17 05:16:03
【问题描述】:
我刚开始使用 CakePHP 框架,准确地说是 2.0。我阅读了大部分文档和示例,并看到了博客教程。
http://book.cakephp.org/2.0/en/tutorials-and-examples/blog/part-two.html#editing-posts 在本教程的“编辑帖子”部分,我看到他们使用隐藏字段来记住帖子 ID。由于客户端修改,这不是不好的做法吗?
我处理此问题的方式是删除隐藏字段,并在提交表单时将帖子 ID 添加到 POST 数据中,然后再保存和验证它。这是正确的方法吗?
【问题讨论】:
-
你怎么知道要使用哪个帖子 ID?
-
好吧,我使用示例来编辑用户而不是帖子。所以我从 Auth 组件中获取了登录用户的 ID: $this->Auth->user('id');
-
当用户被授权只能编辑数据库中的一个记录时,这是最好的方法,但是当他们可以编辑多个时呢?
-
尝试更改它,看看它是否“不安全的直接对象引用”。为什么你会想问?
标签: security cakephp cakephp-2.0 hidden-field postdata