Jump to content

condition for checkbox


newphpcoder

Recommended Posts

Hi..

 

I have form for leave and now I need to add checkbox  for halfday.

 

if checkbox is checked the HOURS_LEAVE =  HOURS_LEAVE * 4 because his leave is halfday only.

then if checkbox is not check  the HOURS_LEAVE = HOURS_LEAVE * 8 .

and also if checkbox is check the value is H else W then it also save to database

here is my code for LeaveEmp.php

 

<?php
include 'config.php';
date_default_timezone_set('Asia/Singapore');
session_start();
$currentEmpID = $_SESSION['empID'];

      $EMP_NO = $_GET['EMP_NO'];
      $NAME = $_GET['NAME'];
      $DATE_LEAVE_FROM = $_GET['DATE_LEAVE_FROM'];
      $DATE_LEAVE_TO = $_GET['DATE_LEAVE_TO'];
      $HOURS_LEAVE = $_GET['HOURS_LEAVE'];
      $Approve = $_GET['Approve'];
      $TYPE =$_GET['TYPE'];
      $dateprocess = $_GET['dateprocess'];
      $DATE_LEAVE = $_GET['DATE_LEAVE']; 
      $EMPNO = $_GET['EMPNO'];

function GetDays($StartDate, $EndDate){   
$StartDate = date("Y-m-d", strtotime($StartDate));   
$EndDate = date("Y-m-d", strtotime($EndDate));   
$Days[] = $StartDate;   
$CurrentDate = $StartDate;   
  while($CurrentDate < $EndDate){   
    $CurrentDate = date("Y-m-d", strtotime("+1 day", strtotime($CurrentDate)));     
        
        if(date("w",strtotime($CurrentDate))>0){  
        $Days[] = $CurrentDate;    
        
        }  

  } 
return count($Days);    
}   
    
$HOURS_LEAVE = GetDays($DATE_LEAVE_FROM, $DATE_LEAVE_TO);                            
   
$smarty->assign('LeaveStatus', array(SickLeave=>'Sick Leave',VacationLeave=>'Vacation Leave',BirthdayLeave=>'Birthday Leave',MaternityLeave=>'Maternity Leave', PaternityLeave=>'Paternity Leave', UnionLeave=>'Union Leave', Holiday=>'Holiday'));
$smarty->assign('TYPE', $TYPE);

$sql = "SELECT l.EMP_NO, l.DATE_LEAVE_FROM, 
l.DATE_LEAVE_TO, l.HOURS_LEAVE, l.TYPE_LEAVE, l.STATUS_LEAVE 
FROM $ADODB_DB.employment em, $PAYROLL.leave_data l 
WHERE em.EMP_NO = l.EMP_NO AND em.EMP_ID = '$currentEmpID' AND l.DATE_LEAVE_FROM = '$DATE_LEAVE_FROM'";
$result_edit = $conn2->Execute($sql);   

$DATE_LEAVE_FROM = $result_edit->fields['DATE_LEAVE_FROM'];
$DATE_LEAVE_TO = $result_edit->fields['DATE_LEAVE_TO'];

$smarty->assign('DATE_LEAVE_FROM', $DATE_LEAVE_FROM);
$smarty->assign('DATE_LEAVE_TO', $DATE_LEAVE_TO);
      
$sql = "SELECT l.EMP_NO, p.EMP_ID, CONCAT(LNAME, ', ',  FNAME, ' ', MI, '.') AS FULLNAME, l.DATE_LEAVE_FROM, l.DATE_LEAVE_TO, l.HOURS_LEAVE, l.TYPE_LEAVE, l.STATUS_LEAVE FROM $ADODB_DB.PERSONAL p, $ADODB_DB.employment em, $PAYROLL.leave_data l WHERE em.EMP_NO = l.EMP_NO AND p.EMP_ID = em.EMP_ID ORDER BY FULLNAME";
$rs = $conn2->GetAll($sql);

$smarty->assign('getleave', $rs); 

$smarty->display('header_att.tpl');
$smarty->display('LeaveForm.tpl');
$smarty->display('footer.tpl'); 
?>

 

here is my code for saving leave:

 

<?php
  include 'config.php';
  date_default_timezone_set('Asia/Singapore'); 
  $currentEmpID      = $_SESSION["empID"];
  
$EMP_NO = $_GET['EMP_NO'];
      $NAME = $_GET['NAME'];
      $DATE_LEAVE_FROM = $_GET['DATE_LEAVE_FROM'];
      $DATE_LEAVE_TO = $_GET['DATE_LEAVE_TO'];
      $HOURS_LEAVE = $_GET['HOURS_LEAVE'];
      $TYPE =$_GET['TYPE'];
      $Approve = $_GET['Approve'];
      $dateprocess = $_GET['dateprocess'];
      
      $today = date("Y-m-d");

function GetDays($StartDate, $EndDate){   
$StartDate = date("Y-m-d", strtotime($StartDate));   
$EndDate = date("Y-m-d", strtotime($EndDate));   
$Days[] = $StartDate;   
$CurrentDate = $StartDate;   
  while($CurrentDate < $EndDate){   
    $CurrentDate = date("Y-m-d", strtotime("+1 day", strtotime($CurrentDate)));   
        
        if(date("w",strtotime($CurrentDate))>0){  
        $Days[] = $CurrentDate;    
        
        }  

  } 
return count($Days);    
}   
    
$HOURS_LEAVE = GetDays($DATE_LEAVE_FROM, $DATE_LEAVE_TO);
$HOURS_LEAVE = $HOURS_LEAVE * 8; 
$smarty->assign('LeaveStatus', array(SickLeave=>'Sick Leave',VacationLeave=>'Vacation Leave',BirthdayLeave=>'Birthday Leave',MaternityLeave=>'Maternity Leave', PaternityLeave=>'Paternity Leave', UnionLeave=>'Union Leave', Holiday=>'Holiday'));
$smarty->assign('TYPE', $TYPE);

$smarty->assign('DATE_LEAVE_FROM', $DATE_LEAVE_FROM);
$smarty->assign('DATE_LEAVE_TO', $DATE_LEAVE_TO);
$smarty->assign('EMP_NO', $EMP_NO);
$smarty->assign('NAME', $NAME);
$smarty->assign('HOURS_LEAVE', $HOURS_LEAVE);
$smarty->assign('TYPE', $TYPE);
$smarty->assign('dateprocess', $today);
  $sql = "SELECT EMP_NO, DATE_LEAVE_FROM, DATE_LEAVE_TO, HOURS_LEAVE, TYPE_LEAVE, STATUS_LEAVE, DATE_PROCESS FROM leave_data WHERE EMP_NO = '$EMP_NO' AND DATE_LEAVE_FROM = '$DATE_LEAVE_FROM' AND DATE_LEAVE_TO = '$DATE_LEAVE_TO'";
  $RsLeave = $conn2->Execute($sql);
  
  $numrowsRsLeave = $RsLeave->RecordCount();
  
   if($numrowsRsLeave > 0){ 
  echo "<script>alert('Transaction has already been process')</script>";
  echo "<script>navigate('LeaveEmp.php')</script>";   
  }
  
  else {
  $sql = "SELECT EMP_NO, DATE_LEAVE_FROM, DATE_LEAVE_TO, HOURS_LEAVE, TYPE_LEAVE, STATUS_LEAVE, DATE_PROCESS FROM leave_data WHERE EMP_NO = '$EMP_NO' AND DATE_LEAVE_FROM = '$DATE_LEAVE_FROM' AND DATE_LEAVE_TO = '$DATE_LEAVE_TO'";
  $RsLeave = $conn2->Execute($sql);
  
    $saverec['EMP_NO'] = $EMP_NO;
  $saverec['DATE_LEAVE_FROM'] = $DATE_LEAVE_FROM;
  $saverec['DATE_LEAVE_TO'] = $DATE_LEAVE_TO;
  $saverec['HOURS_LEAVE'] = $HOURS_LEAVE;
  $saverec['TYPE_LEAVE'] = $TYPE;
  $saverec['STATUS_LEAVE'] = $Approve;
  $saverec['DATE_PROCESS'] = $today;
  
  $insertSQL = $conn2->GetInsertSQL($RsLeave, $saverec);
  $conn2->Execute($insertSQL); 
  }
  
  
  $sql = "SELECT EMP_NO, DATE_LEAVE_FROM, DATE_LEAVE_TO, HOURS_LEAVE, TYPE_LEAVE, STATUS_LEAVE, DATE_PROCESS FROM leave_log WHERE EMP_NO = '$EMP_NO' AND DATE_LEAVE_FROM = '$DATE_LEAVE_FROM' AND DATE_LEAVE_TO = '$DATE_LEAVE_TO'";
  $RsLeaveLog = $conn2->Execute($sql);
  
  $numrowsRsLeave = $RsLeaveLog->RecordCount();
  
  if($numrowsRsLeave > 0){ 
  echo "<script>alert('Transaction has already been process')</script>";
  echo "<script>navigate('LeaveEmp.php')</script>";   
  }
  
  else{
  $sql = "SELECT EMP_NO, DATE_LEAVE_FROM, DATE_LEAVE_TO, HOURS_LEAVE, TYPE_LEAVE, STATUS_LEAVE, DATE_PROCESS FROM leave_log WHERE EMP_NO = '$EMP_NO' AND DATE_LEAVE_FROM = '$DATE_LEAVE_FROM' AND DATE_LEAVE_TO = '$DATE_LEAVE_TO'";
  $RsLeaveLog = $conn2->Execute($sql);
  
    $saverec['EMP_NO'] = $EMP_NO;
  $saverec['DATE_LEAVE_FROM'] = $DATE_LEAVE_FROM;
  $saverec['DATE_LEAVE_TO'] = $DATE_LEAVE_TO;
  $saverec['HOURS_LEAVE'] = $HOURS_LEAVE;
  $saverec['TYPE_LEAVE'] = $TYPE;
  $saverec['STATUS_LEAVE'] = $Approve;
  $saverec['DATE_PROCESS'] = $today;
  
  $insertSQL = $conn2->GetInsertSQL($RsLeaveLog, $saverec);
  $conn2->Execute($insertSQL); 
  }
  
session_write_close();
header("Location:LeaveEmp.php");
exit();
?>

 

And here is the LeaveForm.tpl

 

<script>
window.onload = function() {   

  var ul = document.getElementById('searchpayroll');
  var links = ul.getElementsByTagName('a');
  var i = 0;

document.onkeyup = function(e){ 

e = window.event || e;

   var key = e.charCode || e.keyCode;

     if (key == 40) { 

      if (i < links.length - 1) i++; 
        links[i].focus();    
    }
    else if (key == 38) {
      if (i > 0) i--;
      links[i].focus(); 
    }

}
}

function ApproveLeaveOP(){
    var EMP_NO = document.getElementById('EMP_NO').value;
    var DATE_LEAVE_FROM = document.getElementById('DATE_LEAVE_FROM').value;
    var DATE_LEAVE_TO = document.getElementById('DATE_LEAVE_TO').value;
    var NAME = document.getElementById('NAME').value;
    var HOURS_LEAVE = document.getElementById('HOURS_LEAVE').value;
    var Approve = document.getElementById('Approve').value;
    var TYPE = document.getElementById('TYPE').value;
    var dateprocess = document.getElementById('dateprocess').value;
    var H = document.getElementById('H').value;
    document.sampleform.action="AddLeave.php?EMP_NO="+EMP_NO+"&DATE_LEAVE_FROM="+DATE_LEAVE_FROM+"&DATE_LEAVE_TO="+DATE_LEAVE_TO+"&NAME="+NAME+"&HOURS_LEAVE="+HOURS_LEAVE+"&Approve="+Approve+"&TYPE="+TYPE+"&dateprocess="+dateprocess+"&H="+H;
    document.sampleform.submit();
}
</script>
<script type="text/javascript" src="op_from_date_leave.js">
</script>
<script type="text/javascript"  src="op_from_date_leave_conf2.js"></script>

<div id="Search">
<form>
<p class="serif"><b>Search Lastname:</b></p>
<input type="text" name="search_" size="20" onkeyup="searchEmpLeaveOP(this.value);">
<div>

<hr />
<ul id="searchpayroll" style="overflow:auto; height:380px; width:100%; margin-left:2px;">
{section name=co_emp loop=$personalAll}
<li><a href="LeaveData.php?queryEmpID={$personalAll[co_emp].EMP_ID}">{$personalAll[co_emp].FULLNAME}</a></li>  

<hr />
{sectionelse}
<li>No records found</li>
{/section}
</ul>
</div>
<div id="EmpOTForm">
<fieldset>
<legend>Overtime and Leave Form</legend>
<input type="button" name="OTbtn" value="Overtime" onclick="OtFrmOP()")>
<input type="button" name="Leavebtn" value="Leave" onClick="LeaveOP()">

<p class="serif">
<label id="LeaveEmpIDLabel">EMP ID</label><label id="LeaveNameLabel">NAME</label><label id="FromLeave"><a href="Javascript:showCal('RegCalendar1')">FROM DATE </a></label><label id="DaysLabel"><a href="Javascript:showCal('RegCalendar2')">TO DATE</a></label><label id="TypeLeave">LEAVE TYPE</label><label id="HLeave">H</label>
<input type="text" name="EMP_NO" id="EMP_NO" value="{$empno}" size="8" >
<input type="text" name="NAME" id="NAME" value="{$fullname}" size="35" >
<input type="text" name="DATE_LEAVE_FROM" id="DATE_LEAVE_FROM" value="{$DATE_LEAVE_FROM}" size="9">
<input type="text" name="DATE_LEAVE_TO" id="DATE_LEAVE_TO" value="{$DATE_LEAVE_TO}" size="9">

{html_options id=TYPE name=TYPE options=$LeaveStatus selected=$TYPE style="width:140px;"}
<input type="checkbox" name="H" id="H" value="">
<input type="button" name="Approve" value="Approve" id="Approve" onclick="ApproveLeaveOP()"> 
<input type="button" name="Edit" value="Edit" id="Edit" onclick="EditLeaveOP()"> 
<input type="hidden" name="dateprocess" id="dateprocess" value="{$dateprocess}">
</p>
<input type="hidden" id="HOURS_LEAVE">
</fieldset>
<div>
<p>
<table border="1" class="stat" width="auto"> 
<tr>
<th>EMP ID</th>
<th>NAME</th>
<th>FROM DATE</th>
<th>TO DATE</th>
<th># of HOURS</th>
<th>TYPE</th>
<th>STATUS</th>
</tr>
{section name=att loop=$getleave}
  <tr>
    <td id = "EMPNO">{$getleave[att].EMP_NO}</td>
    <td >{$getleave[att].FULLNAME}</td>
    <td id = "DATE_LEAVE" onclick="opleave_edit('{$getleave[att].DATE_LEAVE_FROM}')">{$getleave[att].DATE_LEAVE_FROM}</td>
    <td >{$getleave[att].DATE_LEAVE_TO}</td>
    <td >{$getleave[att].HOURS_LEAVE}</td>     
    <td >{$getleave[att].TYPE_LEAVE}</td>     
    <td >{$getleave[att].STATUS_LEAVE}</td> 
  </tr> 
{/section}

</table>
</p>                          

</form>
</div>
</div>
</div>

 

I attach the sample form.

 

Thank you

 

 

post-101569-13482403402731_thumb.jpg

Link to comment
https://forums.phpfreaks.com/topic/260774-condition-for-checkbox/
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.