保存搜索'以后的电子邮件通知

时间:2018-03-10 22:15:55

标签: php mysql search

我有一个搜索条目的门户网站。我想实现一个函数来保存您的电子邮件以进行搜索,以便在有更多条目与我的搜索匹配时让门户网站向您发送通知。搜索本身确实有几个参数可能在将来发生变化。

我这里只看到两个选项,两个都不满意

  1. 将每个参数保存在一列中,这意味着每次搜索参数更改时都会更改表格
  2. 将参数保存为json编码的字符串,就像wordpress处理它一样,这种感觉就像一个缓慢的解决方案(如果参数本身发生变化,也意味着要经历(并编辑)每个条目
  3. 我的问题:将此类数据存储的最佳做法是什么,以便将来轻松实现。使用?

2 个答案:

答案 0 :(得分:2)

设计表方案后,您永远不必更改它。这总会导致很多问题。

目标是保存搜索,其中包含参数及其具体的。对我来说这看起来像3个表:

searches(id, user_id, created_at, ...)
parameters(id, name, ...)
values(search_id, parameter_id, value)

其中values.search_idvalues.parameter_id分别是引用searches.idparameters.id的外键。

答案 1 :(得分:0)

我最好的建议是创建一个专门用于保存这些值的表。在此表中,每次用户进行搜索时,都会存储搜索输入的值,用户的ID以及属于搜索请求的时间戳。

通过这种方式,您将来可以随心所欲地做任何事情。您的所有数据都将存储在一个专门用于获取统计信息的独立表中。