防止更改复选框值
Prevent changing checkbox value
因为我在网上找不到其他答案,所以我在这里问:
我想找到一种方法来防止人们更改复选框的值。
我正在使用 serialize()
和 unserialize()
通过我的数据库设置和获取复选框数据,问题是如果有人更改了复选框的值(使用 Chrome 或例如 Firefox 开发工具)它弄乱了我检索到的值。所以我想知道是否可以通过 PHP.
有点不清楚你问的是什么:php只能在服务器端处理数据。如果您不想修改您从数据库读取/写入/从数据库读取的数据集的某些特定属性,那么就不要这样做。没有人强迫您考虑您获得的数据,例如在您从表单提交中获得的 $_POST 值中。
然而,复选框本身仅在客户端显示。只有那里的用户才能修改这些值。 php 对此没有任何控制权,因为它在服务器端是 运行。
你可以做的是尝试通过可以在客户端使用的 javascript 来阻止对复选框的更改。这是通过抑制或更好地吞噬用户引发的点击事件来实现的。但实际上没有必要这样做:html 本身允许将复选框声明为禁用,以防止任何修改。
如果这不是您要查找的内容,可能是由于光学原因,您可能希望通过添加一个包含相同名称和值的隐藏字段来覆盖 html 级别的复选框的值。这样,用户所做的修改无关紧要。
因为我在网上找不到其他答案,所以我在这里问:
我想找到一种方法来防止人们更改复选框的值。
我正在使用 serialize()
和 unserialize()
通过我的数据库设置和获取复选框数据,问题是如果有人更改了复选框的值(使用 Chrome 或例如 Firefox 开发工具)它弄乱了我检索到的值。所以我想知道是否可以通过 PHP.
有点不清楚你问的是什么:php只能在服务器端处理数据。如果您不想修改您从数据库读取/写入/从数据库读取的数据集的某些特定属性,那么就不要这样做。没有人强迫您考虑您获得的数据,例如在您从表单提交中获得的 $_POST 值中。
然而,复选框本身仅在客户端显示。只有那里的用户才能修改这些值。 php 对此没有任何控制权,因为它在服务器端是 运行。
你可以做的是尝试通过可以在客户端使用的 javascript 来阻止对复选框的更改。这是通过抑制或更好地吞噬用户引发的点击事件来实现的。但实际上没有必要这样做:html 本身允许将复选框声明为禁用,以防止任何修改。
如果这不是您要查找的内容,可能是由于光学原因,您可能希望通过添加一个包含相同名称和值的隐藏字段来覆盖 html 级别的复选框的值。这样,用户所做的修改无关紧要。