Hello guys I really need your help to save my job. i started to create and attendance system but I stucked up with time in button.
I have created a time out button and working fine and great but the problem is that I am unsuccessfull for creating a time in that when user sign's in and click's on time in button current time shows on the table and inserts into database and the time in button will not work anymore until the next day starts.
Can you guys please help me out for creating this??
here are some codes that i would like to share with you
My home page code for time in and time out :
home.php code :
<?php
date_default_timezone_set("Etc/GMT+7");
include_once("include/uchecksession.php");
$uid = $_SESSION["uid"];
include_once("include/config.php");
?>
<script language="javascript">
function timeout() {
document.form1.action = "settime.php?uid=<?php echo $uid?>";
document.form1.submit();
}
</script>
<html>
<head>
</head>
<body>
<?php
$result = $_GET["result"];
date_default_timezone_set("Etc/GMT+7");
$date = date('Y-m-d');
$day = date('l');
$min = date('i');
$hour = date('H');
$min = $min - 5;
if($min<0){ $hour=$hour-1; $min=$min+65;}
$time = $hour.":".$min;
$settime = $time;
$settime1 = date('h:i:s A');
?>
<div id="main">
<div id="main-right">
<div class="clear"></div>
<form name="form1" method="post" action= "" >
<div id="time-status">
<h4>Time Status</h4>
<?php
date_default_timezone_set("Etc/GMT+7");
$query = "select * from presence where uid=".$uid." and date='".$date."'";
$recordset = mysql_query($query);
while($record = mysql_fetch_array($recordset)){
$count = 1;
//echo "<td>Your Time In :==: ",$record["timein"],"</td></tr><br></table>";
echo "<table><tr><td>Your Time In :</td><td> ",$record["timein"],"</td></tr></table>";
$lasttimeout = $record["timeout"];
}
echo "<table><tr><td>Your Time Out :</td><td> ",$lasttimeout,"</td></tr></table>";
?>
<input type="button" name="button2" value="Time Out" onClick="timeout()" class="button">
</div>
<div id="log">
<h4>User Log</h4>
<table border="1" bordercolor="#CCCCCC">
<tr>
<th scope="col"><div align="center">User Name </div></th>
<th scope="col">Time Req. </th>
<th scope="col">Time Spent </th>
</tr>
<?php
date_default_timezone_set("Etc/GMT+7");
$result = $_GET["result"];
$date = date('Y-m-d');
$day = date('l');
$min = date('i');
$hour = date('h');
$min = $min - 5;
if($min<0){ $hour=$hour-1; $min=$min+60;}
$time = $hour.":".$min;
$settime = $time;
$settime1 = date('h:i:s A');
$query = "select * from presence where uid=".$uid." and date='".$date."'";
$recordset = mysql_query($query);
while($record = mysql_fetch_array($recordset)){
$count = 1;
//echo "<td>Today you timed in at:- ",$record["timein"],"</td></tr><br></table>";
//$lasttimeout = $record["timeout"];
}
if($count!=1)
{
$query2 = "insert into presence(timein, timeout, date, uid, pday)
values('$settime', '$settime1', '$date', $uid, '$day')";
$af = mysql_query($query2);
//echo "<td>Today you timed in at:- ",$settime,"</td></tr><br></table>";
$lasttimeout = date('H:i');
}
//echo "<table><tr><td>Today you last timed out at:- ",$lasttimeout,"
//</td></tr></table>";
$array1 = array();
$array2 = array();
$array3 = array();
$array4 = array();
$userid = array();
$great = 0;
function calculate($timein, $timeout) {
$timespentin = split(":",$timein,3);
$timespentout = split(":",$timeout,3);
//print_r($timespentin);
//print_r($timespentout);
$t1 = $timespentin[0]*60 + $timespentin[1];
$t2 = $timespentout[0]*60 + $timespentout[1];
$timespent = round(($t2 - $t1)/60,2);
//echo $timespent;
return $timespent;
}
$sday = 1;
$today = date ("d");
$month = date("m");
$year = date("Y");
$date1 = $year."-".$month."-".$sday;
$date2 = $year."-".$month."-".$today;
$recordset5 = mysql_query("select * from nwdays where nwdate between '".$date1."' and '".$date2."' and uid=0 and holidaytype=2 order by nwdate");
$ndays = 0;
while($record5 = mysql_fetch_array($recordset5)) {
$ndays = $ndays + 1;
}
$towday = $today - $ndays;
$recordset15 = mysql_query("select * from nwdays where nwdate between '".$date1."' and '".$date2."' and uid=".$uid." and holidaytype=0 order by nwdate");
$undays = 0;
while($record15 = mysql_fetch_array($recordset15)) {
$undays = $undays + 1;
}
//$towhours = $towday * 8;
$towday = $towday - $undays ;
$query = "select * from users where uid =".$uid;
$recordset = mysql_query($query);
while($record = mysql_fetch_array($recordset)) {
$whours = $record["uwhours"];
$towhours = $towday * $whours;
$totaltime = 0;
$query1 = "select * from presence where uid =".$uid." and date between '".$date1."' and '".$date2."' order by date";
$recordset1 = mysql_query($query1);
while($record1 = mysql_fetch_array($recordset1)) {
$timein = $record1["timein"];
$timeout = $record1["timeout"];
$daytime = calculate($timein, $timeout);
$totaltime = $totaltime + $daytime;
}
$ttimehm = explode(".",$totaltime,2);
$hours = $ttimehm[0];
$ttimehm = split(".",$totaltime,2);
$minutes = round ($ttimehm[1]*60,0);
//echo $hours,"---",$minutes;
if ($minutes >59) {$minutes = $minutes%60;}
$div = $minutes/10;
if($div<1) {$minutes = "0".$minutes;}
$totaltime = $hours.":".$minutes;
}
$month = date("m");
$year = date("Y");
$startday = 1;
$endday = date("d");
$date1 = $year."-".$month."-".$startday;
$date2 = $year."-".$month."-".$endday;
$recordset9 = mysql_query("select * from configuration where setname='relaxedhours'");
while($record9 = mysql_fetch_array($recordset9)) {
$relaxedhours = $record9["setvalue"];
}
$recordset4 = mysql_query("select * from nwdays where nwdate
between '".$date1."' and '".$date2."' and uid=0 and holidaytype=2 order by nwdate");
$days = 0;
while($record4 = mysql_fetch_array($recordset4)) {
$days = $days + 1;
}
$wdays1 = $endday - $days;
//$whours = $wdays *8;
$recordset = mysql_query("select * from users");
while($record = mysql_fetch_array($recordset)) {
$recordset15 = mysql_query("select * from nwdays where nwdate between '".$date1."' and '".$date2."' and uid=".$record["uid"]." and holidaytype=0 order by nwdate");
$undays = 0;
while($record15 = mysql_fetch_array($recordset15)) {
$undays = $undays + 1;
}
$wdays = $wdays1 - $undays;
$whours1 = $record["uwhours"];
$whours = $wdays * $whours1;
$totaltime = 0;
$query1 = "select * from presence where uid =".$record["uid"]." and date between '".$date1."' and '".$date2."' order by date";
$recordset1 = mysql_query($query1);
while($record1 = mysql_fetch_array($recordset1)) {
$timein = $record1["timein"];
$timeout = $record1["timeout"];
$totaltime = $totaltime + calculate($timein, $timeout);
//$timespent = split(":",$timein,2);
//print_r($timespent);
}
$ttimehm = explode(".",$totaltime,2);
$hours = $ttimehm[0];
$ttimehm = split(".",$totaltime,2);
$minutes = round ($ttimehm[1]*60,0);
if ($minutes >59) {$minutes = $minutes%60;}
$div = $minutes/10;
if($div<1) {$minutes = "0".$minutes;}
$totaltime = $hours.":".$minutes;
$userid["$great"] = $record["uid"];
$array1["$great"] = $record["ulogin"];
$array2["$great"] = $whours;
$array3["$great"] = $totaltime;
//$array4["$great"] = $minutes;
$great++;
}
$greatest = 0;
for ( $i=0; $i < $great; $i++ )
{
$greatest = $array3[$i];
$greatest = split(":",$greatest,"2");
$array3[$i] = ($greatest[0] * 60) + $greatest[1];
}
for ( $i=0; $i < $great; $i++)
{
for ( $j=$i+1; $j < $great; $j++ )
{
if ( $array3[$j] > $array3[$i])
{
$temp1 = $array1[$j];
$temp2 = $array2[$j];
$temp3 = $array3[$j];
$temp4 = $userid[$j];
$array1[$j] = $array1[$i];
$array2[$j] = $array2[$i];
$array3[$j] = $array3[$i];
$userid[$j] = $userid[$i];
$array1[$i] = $temp1;
$array2[$i] = $temp2;
$array3[$i] = $temp3;
$userid[$i] = $temp4;
}
}
}
for ( $i=0; $i < $great; $i++ )
{
$totaltime = $array3[$i];
$totalhours = intval($totaltime/60);
$totalminutes = $totaltime%60;
if($totalminutes<10) {$totalminutes = "0".$totalminutes;}
$array3[$i] = $totalhours.":".$totalminutes;
}
for ( $i=0; $i < $great; $i++ )
{
if(($array3[$i]+$relaxedhours)< $array2[$i])
{
if ( $uid == $userid["$i"] )
echo"<tr bgcolor='skyblue'><td><div align='left'>",$array1["$i"],"</td>
<td align='center'>",$array2[$i],"</td><td align='center'><font color='red'>",$array3[$i],"</font></td></tr>";
else
echo"<tr><td><div align='left'>",$array1["$i"],"</td>
<td align='center'>",$array2[$i],"</td><td align='center'><font color='red'>",$array3[$i],"</font></td></tr>";
}
else
{
if ( $uid == $userid["$i"] )
echo"<tr bgcolor='skyblue'><td><div align='left'>",$array1["$i"],"</td>
<td align='center'>",$array2[$i],"</td><td align='center'>",$array3[$i],"</td></tr>";
else
echo"<tr><td><div align='left'>",$array1["$i"],"</td>
<td align='center'>",$array2[$i],"</td><td align='center'>",$array3[$i],"</td></tr>";
}
}
?>
</table>
</div>
</form>
</div>
</div>
</div>
</div>
Code for time out button :
settime.php - Code :
<?php
$uid = $_GET["uid"];
//if($uid==""){
//header("Location:login.php");
//}
include_once("include/config.php");
//include_once("include\menu.php");
date_default_timezone_set("Etc/GMT+7");
$date = date('Y-m-d');
$settime = date('h:i:s A');
$query = "update presence set timeout = '".$settime."' where uid=".$uid." and date='".$date."'";
$af = mysql_query($query);
if($_GET["admin"]==1)
{
header("Location:admin.php?uid=".$uid);
}
else
{
header("Location:home.php?uid=".$uid);
}
?>
Above are the codes see and let me know if you guys can help me out I would be really really thankfull to you all.
Thank You
Kind Regards
Usman Khan