0
我为这个微不足道的问题表示歉意,花了很多小时使用谷歌搜索这个问题的答案。请帮助.. 我有一个学生的日程安排表和学生的表出勤表考勤。我想要的是比较学生的时间表和出席人数。如何在同一天比较多个时间表和出席
表时间表
ID | stud_id | day | timein | timeout | schedule_hour |
1 | 8888 | Monday| 08:00AM | 09:00AM | 1 |
2 | 8888 | Monday| 10:00AM | 12:00PM | 2 |
3 | 8888 | Monday| 01:00PM | 03:00PM | 2 |
4 | 8888 |Tuesday| 07:00AM | 09:00AM | 2 |
5 | 8888 |Tuesday| 03:00PM | 04:00PM | 1 |
6 | 8888 |Tuesday| 06:00PM | 08:00PM | 2 |
表出席
ID | stud_id | day | timein | timeout | hour |
1 | 8888 | Monday| 07:55AM | 09:10AM |1.15 |
2 | 8888 | Monday| 09:51AM | 12:03PM |2.12 |
3 | 8888 | Monday| 12:50PM | 03:05PM |2.15 |
4 | 8888 |Tuesday| 06:53AM | 09:15AM |2.22 |
5 | 8888 |Tuesday| 02:50PM | 04:06PM |1.16 |
6 | 8888 |Tuesday| 05:52PM | 08:09PM |2.17 |
7 | 8888 |Tuesday| 09:52PM | 10:09PM |1.17 |
PHP代码如下: -
<?php
$query=$conn->query("SELECT *
FROM student a,attendance d,schedule e
WHERE a.student_id = d.student_id
AND d.student_id = e.student_id
AND a.student_id = $get_id")or die(mysql_error());
$totalhour = 0;
$totalitems = 0;
function hourandmin($time1){
$hour = 0;
$minute = 0;
while($time1 > 1.0){
$hour = $hour + 1;
$time1 = $time1 - 1;
}
if($time1 < 1.0){
$minute = $time1 * 60;
}
$time1 = round($hour).".".round($minute)."";
return $time1;
}
while($row = $query->fetch()){
$date = strtotime($row['login']);
$date2 = strtotime($row['logout']);
$hour = ($date2 - $date)/(60*60);
if ($hour < 0){
$hour = 0;
}
?>
<tr>
<td><?php echo $row['student_id']; ?></td>
<td><?php echo $row['day']; ?></td>
<td><?php echo $row['timein']; ?></td>
<td><?php echo $row['timeout']; ?></td>
<td><?php echo hourandmin((($hour))); ?></td>
<td><?php echo $schedule_hour; ?></td>
</tr>
<?php } ?>
我不知道如何输出的时间表小时 因此,例如在他出席的第7排他计时,但因为他没有时间表在此时的输出是加班
ID | stud_id | day | timein | timeout | hour |schedule_hour
1 | 8888 | Monday| 07:55AM | 09:10AM | 1.15| 1
2 | 8888 | Monday| 09:51AM | 12:03PM | 2.12| 2
3 | 8888 | Monday| 12:50PM | 03:05PM | 2.15| 2
4 | 8888 |Tuesday| 06:53AM | 09:15AM | 2.22| 2
5 | 8888 |Tuesday| 02:50PM | 04:06PM | 1.16| 1
6 | 8888 |Tuesday| 05:52PM | 08:09PM | 2.17| 2
7 | 8888 |Tuesday| 09:52PM | 10:09PM | 1.17| overtime
请更精确地解释你的问题 – Mawcel
喜@Mawcel,我想比较的考勤表和进度表,所以我可以显示日程安排的时间,对不起英文不太好.. – crowww
当代码中的任何地方没有使用“加班”字符串时,它甚至会输出“加班”吗? – kiiru