防止更改复选框值[重复]

Posted

技术标签:

【中文标题】防止更改复选框值[重复]【英文标题】:Prevent changing checkbox value [duplicate] 【发布时间】:2015-08-19 04:11:43 【问题描述】:

由于我在网上没有找到其他答案,所以我在这里问:

我想找到一种方法来防止人们更改复选框的值。

我正在使用 serialize()unserialize() 在我的数据库中设置和获取复选框数据,问题是如果有人更改复选框的值(例如使用 Chrome 或 Firefox 开发工具)它会弄乱我的检索价值观。所以我想知道是否可以通过php

【问题讨论】:

谷歌搜索“防止复选框被更改 php”没有返回任何内容?甚至不到 10 页? 【参考方案1】:

有点不清楚你问的是什么:php只能在服务器端处理数据。如果您不希望修改从数据库读取/写入/写入的数据集的某些特定属性,那么就不要这样做。没有人强迫您考虑您获得的数据,例如在您从表单提交中获得的 $_POST 值中。

但是,复选框本身只显示在客户端。只有那里的用户可以修改这些值。 php 对此没有任何控制权,因为它是在服务器端运行的。

您可以做的是尝试通过可在客户端使用的 javascript 来防止更改复选框。这通过抑制或更好地吞下用户提出的点击事件来起作用。但实际上没有必要这样做:html 本身允许将复选框声明为禁用,以防止任何修改。

如果这不是您想要的,可能是由于光学原因,您可能希望通过添加一个包含相同名称和值的隐藏字段来覆盖 html 级别的复选框的值。这样,用户所做的修改就无关紧要了。

【讨论】:

感谢您的回答。最好的方法是检查 PHP 值是否正确。

以上是关于防止更改复选框值[重复]的主要内容,如果未能解决你的问题,请参考以下文章

复选框值不能基于选中或使用jquery取消选中来更改[重复]

数组仅存储值为 1(非 0)的复选框 [重复]

防止多选框在移动浏览器上的多选框中不更改

[在Java中检查多个复选框状态时如何防止重复的代码?

如果选中则更改复选框的颜色[重复]

激活复选框时更改其背景颜色[重复]