【发布时间】:2011-08-01 18:31:45
【问题描述】:
您好,我有一台记录客人和用户导航到的机器,我正在尝试编写一个 php 脚本,该脚本将对日志进行排序并为我总结人们倾向于去的前五个目的地,即访问了哪些页面大多数。
到目前为止,这是我所拥有的:
<?php
#### mysql connection #####
$db = mysql_connect("_","guest","_");
mysql_select_db(networkr) or die("Couldn't select the database");
echo "<table>";
$query = "SELECT uri LIMIT 5, COUNT(date) GROUP BY uri ORDER BY MAX(COUNT(date)), uri DESC";
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_array($result)){
echo "Top 5 Destinations:". $row['COUNT(date)'] ." ". $row['uri'] .".";
echo "<br />";
}
echo "</table>";
?>
所以我试图让它计算使用日期作为唯一标识符访问特定页面 (uri) 的所有时间。然后我希望它按从高到低的降序列出计数。然后只显示前五个访问量最大的页面。
我在网络浏览器中打开 php 脚本时遇到的错误是:
您的 SQL 语法有错误; 检查对应的手册 您的 MySQL 服务器版本 在 'COUNT(date) 附近使用正确的语法 GROUP BY URI ORDER BY MAX(COUNT(date)), uri DESC' 在第 1 行
我认为这是某种语法错误,因为我不是 php 专家。如果有人可以帮助我检查脚本中的错误,将不胜感激。
【问题讨论】:
标签: php mysql logging count group-by