2011-12-17 3 views
0

하이 차트 차트 작업을 얻으려고하고 있습니다. 거의 거기에 있습니다 ... 나는 단지 하나의 작은 문제가 있습니다. 나는 그 값이 전체가 될 필요가 있습니다.하이 차트 및 PHP에서 주어진 날의 총 레코드 수를 얻으십시오.

<?php 
header("Content-type: text/json"); 

include('../includes/config.php'); 

$tablename = "analytics"; 

$result = mysql_query("SELECT COUNT(*) AS count FROM $tablename"); 
$row = mysql_fetch_array($result,MYSQL_ASSOC); 

$sql = "SELECT id, date FROM $tablename ORDER BY date"; 
$result = mysql_query($sql) or die("Couldn't execute query.".mysql_error()); 

$i=0; 
while($row = mysql_fetch_array($result,MYSQL_ASSOC)) { 

    $row['id'] = (int) $row['id']; 

    $rows[$i] = array(strtotime($row['date'])*1000, $row['id']); 

    $i++; 
} 

echo json_encode($rows); 

?> 

는 경우 : 여기

데이터를 가져옵니다 코드입니다 .. 같은 날의 기록으로 계산하지만 난 좀 지금 내 코드와 혼동하고있어 차트가 완전히 엉망 여기 도움말은 내 데이터베이스 값입니다 :

insert into `analytics`(`id`,`user`,`item`,`ip`,`country`,`date`) values 
(10,1,1,'127.0.0.1','','2011-12-17 06:41:51'), 
(11,1,1,'127.0.0.1','','2011-12-17 06:42:23'), 
(12,1,1,'127.0.0.1','','2011-12-17 06:43:07'), 
(13,1,1,'127.0.0.1','','2011-12-17 06:44:19'), 
(14,1,1,'127.0.0.1','','2011-12-17 06:44:21'), 
(15,1,1,'127.0.0.1','','2011-12-17 06:44:22'), 
(16,1,1,'127.0.0.1','','2011-12-17 06:44:49'), 
(17,1,1,'127.0.0.1','','2011-12-17 06:46:59'), 
(18,1,1,'127.0.0.1','','2011-12-17 06:47:20'), 
(19,1,1,'127.0.0.1','','2011-12-17 06:47:35'), 
(20,1,1,'127.0.0.1','','2011-12-17 06:47:42'), 
(21,1,1,'127.0.0.1','','2011-12-17 06:48:07'), 
(22,1,1,'127.0.0.1','','2011-12-17 06:48:14'), 
(23,1,1,'127.0.0.1','','2011-12-17 06:48:29'), 
(24,1,1,'127.0.0.1','','2011-12-18 06:49:10'), 
(25,1,1,'127.0.0.1','','2011-12-19 07:05:45'), 
(26,1,1,'127.0.0.1','','2011-12-20 08:11:32'), 
(27,1,1,'127.0.0.1','','2011-12-21 08:26:45'), 
(28,1,1,'127.0.0.1','','2011-12-17 08:44:34'); 

그리고 여기에 최종 결과가 있습니다 : result

나는 완전히 여기에서 자기를 잃었습니다, 누군가 도와 줄 수 있습니까?

편집 : result2

답변

0

이 당신은 당신의 첫 번째 쿼리를 대체하기 위해이 쿼리를 사용할 수 있습니다

SELECT date, COUNT(*) AS count 
FROM $tablename 
GROUP BY date; 

각각의 날짜를 계산하려면 쿼리는 다음과 같습니다 출력 여기에 무엇을 @ajreal 말과했다 .
그리고 루프 (두 번째 쿼리와 같이)를 $total += $row["count"]으로 설정하면 원래 첫 번째 쿼리와 같은 총계를 얻게됩니다.

+0

글쎄, 지금은 조금 더 나아졌지만 아직도 .. 내 편집. – Ricardo

+0

OK, 다음과 같은 쿼리 변경으로 해결했습니다 :'SELECT date, COUNT (*) AS count FROM $ tablename GROU BY date (date)' – Ricardo

관련 문제