www.webdeveloper.com
Results 1 to 5 of 5

Thread: Problem in highlighting display data using SELECT Statement with css class

  1. #1
    Join Date
    Oct 2011
    Posts
    350

    Problem in highlighting display data using SELECT Statement with css class

    Hi...

    I have query in highlighting null data using this code:

    Code:
    <?php
    
    include 'config.php';
    
    $currentEmpID = $_SESSION['empID']; 
     
     if(!isset($_POST['Regsubmit_'])){ 
         
        $DATE1 = $_GET['Regfirstinput'];
        $DATE2   = $_GET['Regsecondinput'];
     
     $sql = "SELECT DISTINCT IF(ISNULL(a.LOG_IN), 'rdc', '') AS LOGIN_CLASS, IF(ISNULL(a.LOG_OUT), 'rdc', '') AS LOGOUT_CLASS, a.EMP_ID, CONCAT(LASTNAME, ', ' , FIRSTNAME) AS FULLNAME, a.LOG_IN, a.LOG_OUT
     FROM $ATTENDANCE.attendance_build AS a JOIN $ADODB_DB.employment em ON (a.EMP_ID = em.EMP_NO AND em.STATUS IN ('Reg Operatives', 'Reg Staff')) 
     WHERE LOG_IN BETWEEN '$DATE1' AND '$DATE2' 
     OR ISNULL(LOG_IN) OR ISNULL(LOG_OUT)";
     
        $DTR = $conn3->GetAll($sql);
        $smarty->assign('attendance', $DTR);
     }
     $smarty->display('header_att.tpl');
     $smarty->display('RegAttendance.tpl');
     $smarty->display('footer.tpl');
    ?>
    and here is the tpl code:

    Code:
    {section name=att loop=$attendance}
      <tr>
        <td colspan="2">{$attendance[att].EMP_ID}</td>
        <td colspan="2">{$attendance[att].FULLNAME}</td>  
        <td colspan="2" class="{$attendance[att].LOGIN_CLASS}">{$attendance[att].LOG_IN|date_format:"%d-%m-%Y %I:%M %p"}</td>
        <td colspan="2" class="{$attendance[att].LOGOUT_CLASS}">{$attendance[att].LOG_OUT|date_format:"%d-%m-%Y %I:%M %p"}</td> 
      </tr>
    {sectionelse}
      <tr><td colspan="1">No DATA</td></tr>
    {/section}
    this code highlight the null value of login or logout or both.

    this is the css:
    Code:
    .rdc {background-color:#ff0000;}
    Now, I need to revised my query statement, because i have separate code for adding attendance if the employee has no attendance or no login or no logout.

    I just want to happen is if the employee is already add his attendance in NRS table or should I said if the LOG_IN in attendance table is equal to TIME_IN in NRS table the data will have a color yellow.

    For Example:

    I have this data in attendance table:

    EMP_ID = 012012
    LOG_IN = NULL
    LOG_OUT = 2011-12-12 13:35:00

    I will his attendance in NRS table to have his attendance:

    EMP_NO = 012012
    TIME_IN = 2011-12-12 05:35:00
    TIME_OUT = 2011-12-12 13:35:00



    In my above query the LOG_IN has a background color of RED.

    I want to happen is if I add his attendance in NRS the EMP_NO, LOG_IN, LOGOUT will have a color to notice that it is already have in NRS.

    Because theirs a scenario that the employee has no login or no logout or both.


    Feel free to ask me if my explanation is not clear to you.

    Thank you in advance

  2. #2
    Join Date
    Dec 2011
    Posts
    34
    This isnt a php question, this is because of your template system.
    You will have to check your template system language constructs for if..else.

  3. #3
    Join Date
    Oct 2011
    Posts
    350
    I used Smarty template..

    Is it not in my query statement?

    Because in highlighting the null value I used select query..


    Thank you

  4. #4
    Join Date
    Jun 2006
    Location
    Down at the bottom of the garden
    Posts
    1,239
    I think I understand what you are trying to do but I am not 100&#37; sure on the result you are after.

    Not sure if you can directly call another IF() within an IF() but its worth a try?

    Obviously you need to change the ANOTHER_QUERY to something relevant, you may even need to move it all round if I have not understood what your trying to do?

    Code:
     $sql = "SELECT DISTINCT 
    IF(ISNULL(a.LOG_IN), 'rdc', IF(ANOTHER_QUERY, 'rdc2', '')) AS LOGIN_CLASS, 
    IF(ISNULL(a.LOG_OUT), 'rdc', IF(ANOTHER_QUERY, 'rdc2', '')) AS LOGOUT_CLASS, 
    a.EMP_ID, CONCAT(LASTNAME, ', ' , FIRSTNAME) AS FULLNAME, 
    a.LOG_IN, 
    a.LOG_OUT
     FROM 
    $ATTENDANCE.attendance_build AS a JOIN $ADODB_DB.employment em ON (a.EMP_ID = em.EMP_NO AND em.STATUS IN ('Reg Operatives', 'Reg Staff')) 
     WHERE 
    LOG_IN BETWEEN '$DATE1' AND '$DATE2' OR ISNULL(LOG_IN) OR ISNULL(LOG_OUT)";
    Quote Originally Posted by temp.user123
    You know... You're not so smart. Do you need me to educate you?
    If you say, "please," (and do so, nicely) then I will show you where you're dead wrong.

  5. #5
    Join Date
    Oct 2011
    Posts
    350
    Quote Originally Posted by MrCoder View Post
    I think I understand what you are trying to do but I am not 100% sure on the result you are after.

    Not sure if you can directly call another IF() within an IF() but its worth a try?

    Obviously you need to change the ANOTHER_QUERY to something relevant, you may even need to move it all round if I have not understood what your trying to do?

    Code:
     $sql = "SELECT DISTINCT 
    IF(ISNULL(a.LOG_IN), 'rdc', IF(ANOTHER_QUERY, 'rdc2', '')) AS LOGIN_CLASS, 
    IF(ISNULL(a.LOG_OUT), 'rdc', IF(ANOTHER_QUERY, 'rdc2', '')) AS LOGOUT_CLASS, 
    a.EMP_ID, CONCAT(LASTNAME, ', ' , FIRSTNAME) AS FULLNAME, 
    a.LOG_IN, 
    a.LOG_OUT
     FROM 
    $ATTENDANCE.attendance_build AS a JOIN $ADODB_DB.employment em ON (a.EMP_ID = em.EMP_NO AND em.STATUS IN ('Reg Operatives', 'Reg Staff')) 
     WHERE 
    LOG_IN BETWEEN '$DATE1' AND '$DATE2' OR ISNULL(LOG_IN) OR ISNULL(LOG_OUT)";
    What data is equal to this: ANOTHER_QUERY

    Thank you

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles