使用隐藏字段更新数据库中的数据

病态码

因此,我有一个html表,其中包含从数据库中检索到的数据。每行中都有一个“编辑”按钮。看起来像这样:

<td><form action="controller/edit" method="post">
    <input type="hidden" name="id" value="<?php echo $id ?>">
    <input type="submit" value="edit">
</form></td>

然后在控制器/编辑页面中,我将再次访问数据库:

select * from table where id=$_POST['id']

一切都很好。但是,我正在避免避免第二次访问数据库以提高性能。我正在尝试做这样的事情:

<td><form action="controller/edit" method="post">
    <input type="hidden" name="id" value="<?php echo $id ?>">
    <input type="hidden" name="name" value="<?php echo $name ?>">
    <input type="hidden" name="amount" value="<?php echo $amount ?>">
    <input type="submit" value="edit">
</form></td>

这样行中的所有数据都在表单中,因此当表单提交给控制器/编辑时,我不需要再次访问数据库。这种方法好吗?还是这是不好的做法?

对象操纵器

您提到的第二个似乎确实是捷径,但它可能很容易受到攻击。

隐藏的字段很容易被篡改。例如,用户可以操纵隐藏字段的值并将其更改为随机数,例如975646456456456。

在那种情况下,您的数据库将有不正确的插入,因为可能没有对应于ID 975646456456456的匹配记录。

因此,我认为您应该使用第一个数据库,并检查数据库是否存在该ID,并获取其记录。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

无法使用SWIFT更新数据库FMDB中的字段

来自分类Dev

无法使用SWIFT更新数据库FMDB中的字段

来自分类Dev

使用原始 SQL 更新数据库中的字段?

来自分类Dev

无法更新数据库中的字段

来自分类Dev

使用NestJs从数据库获取隐藏字段

来自分类Dev

如何使用数据库中的数据更新新记录的字段?

来自分类Dev

更新数据库中的所有DATETIME字段

来自分类Dev

如何更新数据库中的多个字段

来自分类Dev

更新数据库中的个人字段

来自分类Dev

更新数据库中的字段并修改其长度

来自分类Dev

Hibernate应该只更新数据库中的某些字段

来自分类Dev

更新数据库中的个人字段

来自分类Dev

更新数据库中的所有DATETIME字段

来自分类Dev

无法更新表单字段中的数据库条目

来自分类Dev

不更新laravel中的数据库字段

来自分类Dev

更新C#中的数据库字段SQL

来自分类Dev

输入字段未在数据库中更新

来自分类Dev

输入被更新为数据库中的错误字段

来自分类Dev

使用数据库结果更新Django选择字段

来自分类Dev

使用Entity Framework 5更新数据库字段

来自分类Dev

使用数据库结果更新Django选择字段

来自分类Dev

使用数据库中动态创建的输入字段更新mysql中的表

来自分类Dev

如何更新组中的mysql数据库字段(使用GROUP BY)

来自分类Dev

如何使用同一数据库表的查询结果更新MYSQL表中的字段?

来自分类Dev

使用PHP一次更新数据库中的所有字段

来自分类Dev

如何使用AngularJS更新/编辑数据库中的数据

来自分类Dev

如何使用AND条件更新SQLite数据库中的数据?

来自分类Dev

如何使用linq更新数据库中的数据

来自分类Dev

Ajax使用codeigniter更新数据库中的数据

Related 相关文章

热门标签

归档