【问题标题】:id passing alternative for website网站的 id 传递替代方案
【发布时间】:2013-10-17 02:25:22
【问题描述】:

我只是想问是否有更好的方法让我在网站上为数据库传递 ID。

现在我通过将“按钮”属性“ID”更改为我要编辑的元素的 ID 来传递它。所以当我将它传递给控制器​​时,我会传递我想要上传的值和按钮的 ID 以进行更新。我知道这不安全,但有其他选择吗?

如果它更好,你至少可以为我指出好的网页设计的正确方向吗?

如果有帮助,我会使用 Codeigniter。

【问题讨论】:

  • 想过使用data- 属性吗?
  • 在表单的操作属性中使用查询参数,例如<form action="whatever?id=123"> 或设置隐藏输入,<input type="hidden" name="id" value="123">

标签: javascript php database


【解决方案1】:

放松。将 ID 传递给浏览器并将其 POST 或将其放在查询字符串上并没有本质上不安全的地方。 ID 本身并不敏感。

就像菲尔上面说的,一个

<input type="hidden" name="id" value="123" /> 

是传递 ID 的常用方法。

安全元素来自于处理下一个请求。始终检查发出请求的用户是否有权修改与 ID 对应的数据。这通常通过检查用户的登录 cookie 来完成。还有其他身份验证方法,但最重要的是证明您拥有的用户应该正在编辑他们正在尝试编辑的数据。

【讨论】:

  • +1 始终检查表单提交的授权。虽然提交这样的 ID 就足够了,但请记住,用户篡改和更改它是微不足道的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-03-10
  • 2010-10-02
  • 1970-01-01
  • 2014-07-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多