2011-04-29 74 views
1

我的网站就像一个搜索引擎,人们在主页上输入搜索查询。我想创建一个趋势/最近的功能,将每个查询记录到mysql数据库中,然后从这些数据中计算出哪些搜索最受搜索,然后显示在标记为趋势搜索的页面上。此外,在此之下,我想要“最近的搜索”,它只显示最近的5次搜索。热门搜索帮助

老实说,我没有使用mysql的经验。我甚至不知道如何将数据从我的网站移动到MySQL。任何帮助,将不胜感激。我搜索并搜索了这些问题和谷歌,但没有找到任何东西。谢谢!

+0

没有经验与MySQL?你有PHP的经验? – Galen 2011-04-29 19:01:18

+0

如果在PHP中使用MySql时找不到任何关于Google-Fu的信息,那肯定会很糟糕。开始输入“mysql php”,第一个自动填充是“mysql php tutorial”,第一个链接是关于做你正在做什么的教程。 – 2011-04-29 20:03:23

回答

1

首先,您需要创建一个DATABASE,其中您需要一个带有时间戳记和已搜索关键字的表格。 (CREATE TABLE)

然后要存储每个关键字的访问到这个表(INSERT INTO ... VALUES ...)

然后你可以通过创建一个SELECT查询选择最上面的关键词是“ GROUP BY关键字“,按COUNT(*)排序(关键字出现次数)

这有点含糊不清,但您需要经过若干步骤才能使用术语你需要谷歌每一步。如果遇到任何这些步骤的复杂情况,请回来!

+0

对于我的桌子,我应该有多少场?我在考虑id,userQuery和count。 – Michael 2011-05-01 21:54:10

+0

原则上这是一个好主意,因为您需要的空间少于存储每个单独查询的空间。然而,如果你想选择时间窗口,你需要存储查询和日期时间,即每个查询的多个条目(如果你只是添加,你怎么知道你只是计算最后说24小时?你可能会在午夜重置,但这不是真的你想要的) 为了不浪费太多空间,你可以创建一个表query_id,query(存储唯一查询),然后为每个访问query_id,datetime(像这样不必一次又一次地存储相同的字符串) – Nicolas78 2011-05-01 21:58:14

+0

首先,我有一个问题,我的数据到我的表中。现在,我的网站使用谷歌搜索API的谷歌自定义搜索。它来自我想存储查询的搜索。我找到了一种方法来使用html和php来抓取它们。但是,它不会工作,因为searchform函数是在javascript中完成的。这就是我对html的看法。 – Michael 2011-05-03 04:22:10