php - 我正在制作一个 HTML 表单,我需要在数据库中保存复选框信息,但此信息也需要可搜索。最好的方法?

标签 php mysql database search forms

所以我正在设计一个数据库,我有一个名为“资源”的实体,它具有名称、url、电子邮件等标准属性,非常适合数据库模式(如 varchars 和文本数据类型)。但是,这些资源具有其他属性,需要在 HTML 表单中表示为复选框,这意味着它们可以根据选中的复选框数量呈现多个值,但也需要可搜索。事实上,要求指出这些资源属性中的大多数都需要可搜索,这对于 varchar 和 text 列类型来说很好,但我不知道如何处理这些可以从一组数据中获取多个值的属性值(表示为复选框的属性。)

这是我的意思的一个例子:

资源主题

请选择此资源的主题:

  • 回收
  • 减少
  • 再利用
  • 堆肥
  • 垃圾填埋场

所以在这里,资源属性是资源主题,对于这个资源记录,如果用户检查 回收、再利用和填埋然后我必须将此信息存储在数据库记录中,但是,它必须是可搜索的,这意味着如果用户查询“回收”、“再利用”或“填埋”,则上述记录将被返回。

顺便说一下,我必须在 PHP 和 MySQL 中执行此操作。因此,我尝试使用 PHP 序列化复选框并将它们存储为序列化字符串,但是,这些不是很容易搜索,因为当我编写尝试使用“LIKE”匹配术语的 MySQL 查询时,我得到的结果不一致。我怀疑这与 PHP 序列化数组的方式有关。所以我想知道是否有更好的方法来做到这一点。将数据存储为 JSON 编码字符串是更好的方法吗?

如有任何建议,我们将不胜感激。

最佳答案

我建议每个复选框一列。如果您在 PHP 代码中进行一些映射,它们可以是 bool 类型。

关于php - 我正在制作一个 HTML 表单,我需要在数据库中保存复选框信息,但此信息也需要可搜索。最好的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5110942/

相关文章:

php - db_select 向我发送所有值,而不是我想要的值

mysql - 如何更改此处复选框的状态?

ruby-on-rails - 如何为单个 ruby​​ 文件连接 rails development.sqlite3 数据库?

php - MySQL数据库行数优化

javascript - html download 属性重定向到 url 而不是下载

php - 具有子路由的子域的 ZF2 路由器配置

php - Magento - 从 Magento 导航菜单中删除 +(加号)

php - 合并日期和时间

mysql - 如何有效地插入新行或更新现有行?

database - 在 3NF 中找到关系但在 BCNF 中找不到