| |
|
|
| | есть cvs файл
ID Day interval id1 id2 In Out
1 15.05.2006 10:10:00 2 31 11878 8 1
2 15.05.2006 10:15:00 5 77.5 11878 10 11
3 15.05.2006 10:20:00 5 77.5 11878 10 7
4 15.05.2006 10:25:00 5 77.5 11878 5 15
...
31121 18.06.2006 10:25:00 5 77.5 11878 6 5
...
|
in и out = общшее колличество за interval минут
как из всего этого сделать выборку
чтобы за день, например 17.05.2006 9:00:00 - 17.05.2006 18:00:00
причем in и out с периодом в 30 минут
возможно ли это если да то как на php ? | |
| |
|
|
| |
|
|
| |
для: Sakh
(03.05.2007 в 07:08)
| | | Начнем с того, что это не csv-файл. В csv-файле разделители - либо запятые, либо точки-с-запятой. Так что описывайте формат файла более детально. | |
| |
|
|
| |
|
|
| |
для: Trianon
(03.05.2007 в 09:37)
| | | точнее файл вот так выглядит:
"ID";"Day";"Interval";"ID1";"ID2";"In";"Out"
1;15.5.2006 10:10:00;2;1;11878;8;1
2;15.5.2006 10:15:00;5;1;11878;10;11
3;15.5.2006 10:20:00;5;1;11878;10;7
4;15.5.2006 10:25:00;5;1;11878;5;15
.....
489;20.5.2006 10:45:00;5;1;11878;32;28
490;20.5.2006 10:50:00;5;1;11878;41;31
491;20.5.2006 10:55:00;5;1;11878;33;27
.....
|
Заготовка получилась примерно такой:
<?
$starttime = "9:00:00"; //начало времени отчета
$endtime = "18:00:00"; //конец времени отчета
$day = "8.7.2006"; //отчет за день
$fd = fopen("test.csv","r"); //ссылка на файл csv
if($fd)
{
echo "<table border=1>";
while($line = fgetcsv($fd, 10000, ";"))
{
$tx = strtok($line[1], ' ');
if($tx == $day)
{
echo "<tr>
<td>".$line[1]."</td>
<td>".$line[5]."</td>
<td>".$line[6]."</td>
</tr>";
}
}
echo "</table>";
}
?>
|
осталось сделать интервалы вместо 5 минут по 30...
P.S. использовались материалы поста cheops`а | |
| |
|
|
| |
|
|
| |
для: Sakh
(03.05.2007 в 10:15)
| | | как сделать чтобы данные выдаваемые скриптом (последнии две колонки) сумировались с очередностью не 5 минут а 30 ???
8.7.2006 16:20:00 21 24
8.7.2006 16:25:00 16 17
8.7.2006 16:30:00 19 22
8.7.2006 16:35:00 15 16
8.7.2006 16:40:00 8 15
8.7.2006 16:45:00 12 16
8.7.2006 16:50:00 6 9
8.7.2006 16:55:00 12 23
8.7.2006 17:00:00 14 13
8.7.2006 17:05:00 16 22
8.7.2006 17:10:00 7 17
8.7.2006 17:15:00 7 9
8.7.2006 17:20:00 7 10
8.7.2006 17:25:00 4 7
8.7.2006 17:30:00 14 9
8.7.2006 17:35:00 10 16
8.7.2006 17:40:00 5 2
8.7.2006 17:45:00 4 13
8.7.2006 17:50:00 9 9
8.7.2006 17:55:00 5 3
8.7.2006 18:00:00 4 20
8.7.2006 18:05:00 2 13
8.7.2006 18:10:00 1 2
|
тоесть надо вместо:
8.7.2006 16:20:00 21 24
8.7.2006 16:25:00 16 17
8.7.2006 16:30:00 19 22
8.7.2006 16:35:00 15 16
8.7.2006 16:40:00 8 15
8.7.2006 16:45:00 12 16
...
|
выдать
8.7.2006 16:20:00 91 110
8.7.2006 16:50:00 ...
|
| |
| |
|
|