What's new

Closed Help - attendance system php

Status
Not open for further replies.

-Zetsu-

Honorary Poster
Joined
Mar 25, 2018
Posts
348
Reaction
72
Points
154
Paano po kaya yung isang button lang ng Log in at Log out. Pag nag log in yung user mag didisplay sa Time In then pag nag log in uli yung user sa time Out naman
PHP:
//log in
<?php
    require_once 'admin/connect.php';
    $student = $_POST['student'];
    $time = date("H:i", strtotime("+7 HOURS"));
    $date = date("Y-m-d", strtotime("+7 HOURS"));
    $q_student = $conn->query("SELECT * FROM `student` WHERE `student_no` = '$student'") or die(mysqli_error());
    $f_student = $q_student->fetch_array();
    $student_name = $f_student['firstname']." ".$f_student['lastname'];
    $conn->query("INSERT INTO `time` VALUES('', '$student', '$student_name', '$time', '$date')") or die(mysqli_error());
    echo "<h3 class = 'text-muted'>".$student_name." <label class = 'text-info'>at  ".date("h:i a", strtotime($time))."</label></h3>";

Code:
//log in javascript

$(document).ready(function(){
    $error = $('<center><h2 class = "text-danger">You are not a student here...<h2></center>');
    $error1 = $('<center><h2 class = "text-danger">Please fill up the field<h2></center>');
    $('#login').click(function(){
        $error.remove();
        $error1.remove();
        $student = $('#student').val();
        if($student == ""){
            $error1.appendTo('#error');
        }else{  
            $.post('check.php', {student: $student},
                function(show){
                    if(show == 'Success'){
                        $.ajax({
                            type: 'POST',
                            url: 'login.php',
                            data: {
                                student: $student
                            },
                            success: function(result){
                                $result = $('<h2 class = "text-warning">You have been login:</h2>' + result).appendTo('#result');
                                $('#student').val('');
                                setTimeout(function(){
                                    $result.remove();
                                }, 10000);
                            }
                        });
                       
                    }else{
                        $('#student').val('');
                        $error.appendTo('#error');
                    }
                }
            )
        }  
    });
});
 
Last edited:
maglagay ka ng column sa table mo. something like logmode. it can be int or boolean and can be null. for ex: 1 is for login and 0 is for logout. so pag pindot ni user sa button, query ka kung anong nakalagay na mode nya sa logmode column. pag 1, then may login na sya so dapat 0 na ang mode na ilalagay mo kasi out na nya yun. pag null naman it means in nya pa lang yun so 1 ang mode na ilalagay mo dapat. pwede din naman dalawang column like in and out. ganun din diskarte, pero this time, datetime mismo ang ilalagay mo sa column na yan. so pag pindot nya ng button, check mo lang kung may laman na si in. pag wala, it means, mag iin pa lang sya, pag meron it means out na ilalagay mo. madaming paraan jan sir. konting imahinasyon lang ang kaylangan.
 
maglagay ka ng column sa table mo. something like logmode. it can be int or boolean and can be null. for ex: 1 is for login and 0 is for logout. so pag pindot ni user sa button, query ka kung anong nakalagay na mode nya sa logmode column. pag 1, then may login na sya so dapat 0 na ang mode na ilalagay mo kasi out na nya yun. pag null naman it means in nya pa lang yun so 1 ang mode na ilalagay mo dapat. pwede din naman dalawang column like in and out. ganun din diskarte, pero this time, datetime mismo ang ilalagay mo sa column na yan. so pag pindot nya ng button, check mo lang kung may laman na si in. pag wala, it means, mag iin pa lang sya, pag meron it means out na ilalagay mo. madaming paraan jan sir. konting imahinasyon lang ang kaylangan.
Sesnya sir , piga na talaga ako . Btw first year palang ako CS
 
isa pa sir, pansin ko may mga sql queries ka mismo sa codes mo, nako, prone sa sql injection yan. gamit ka ng stored procedure or dapat atlis parameterized yang query mo.
 
No problem sir, kahit ano pang level mo. advise lang naman tayo dito e. aral mabuti. nakakadugo talaga ng ilong ang programming.
so far sir akin palang tapos, pero chinallege ako ng Teacher kaya mas papagandahin ko pa kaso diyan ako nag ka problema, may solusyon ako, gumawa ako ng panibagong button which is log out kaso sabi ng guro namin paano kung mapindot niya log in uli edi log in uli siya, ang option ko is ilayo yung button or restrict ko nalang user into 1 per day nag log
 
No problem sir, kahit ano pang level mo. advise lang naman tayo dito e. aral mabuti. nakakadugo talaga ng ilong ang programming.
so far sir akin palang tapos, pero chinallege ako ng Teacher kaya mas papagandahin ko pa kaso diyan ako nag ka problema, may solusyon ako, gumawa ako ng panibagong button which is log out kaso sabi ng guro namin paano kung mapindot niya log in uli edi log in uli siya, ang option ko is ilayo yung button or restrict ko nalang user into 1 per day nag log
 
no. ang layo nyan sir. stripslashes is for removing backslashes. read about stored procedures in T-SQL. isa pa, ang gulo tignan ng code pag may mga nakahalong SQL String Queries.
pero sir sariling method of programming yan ^^ diba may kanya kanya naman tayong way atleast working and Functioning
 
so far sir akin palang tapos, pero chinallege ako ng Teacher kaya mas papagandahin ko pa kaso diyan ako nag ka problema, may solusyon ako, gumawa ako ng panibagong button which is log out kaso sabi ng guro namin paano kung mapindot niya log in uli edi log in uli siya, ang option ko is ilayo yung button or restrict ko nalang user into 1 per day nag log


tama naman sir prof e. paano nga naman kung bigla na lang nyang napindot si logout(unless naka disabled pag may login na sya). restrict mo user mo na mag log once per day? e paano sya mag pipindot ulit ng logout nya?
 
your logs table should look like something like this:


studid | name | logmode | logdatetime
001 aA 1 1/16/2019 8:00
001 aA 0 1/16/2019 5:00
004 aB 1 1/16/2019 7:40
004 aB 0 1/16/2019 5:00


Or

studid | name | in | out
001 aA 1/16/2019 8:00
001 aA 1/16/2019 5:00


looking at it, you can see that stud 001 has 2 rows record in the logs table with distinct time of the day 8am and 5pm respectively then the 2 rows also has 2 distinct logmodes 1 and 0. 1 is for in and 0 is for out. same goes to the other student.

the other table shares the same idea. only, it utilizes two columns in and out which records the datetime of the day.
 
pero sir sariling method of programming yan ^^ diba may kanya kanya naman tayong way atleast working and Functioning

correct pero there is what we call "Best Practices" in Programming. advice ko lang yan sayo habang 1st year ka pa lang. maiintindihan mo yan pag naka step ka na sa higher years mo at pag totoong programmer ka na din.
 
Marunong ka ng mag integrate ng database with php, I presume alam mo rin gumamit ng Session or cøøkíé. Use it for storing current login state from your users and then take it as your reference for your button if it is a login or logout. Huwag ka gumamit ng database para mag save lang ng current state ng browser mo, that's very inefficient.

Kung hindi ka pa marunong gumamit ng session and cøøkíé, igoogle mo.
 
Marunong ka ng mag integrate ng database with php, I presume alam mo rin gumamit ng Session or cøøkíé. Use it for storing current login state from your users and then take it as your reference for your button if it is a login or logout. Huwag ka gumamit ng database para mag save lang ng current state ng browser mo, that's very inefficient.

Kung hindi ka pa marunong gumamit ng session and cøøkíé, igoogle mo.


This one is a very good strategy too. just like using app.config xml file for us windows form devs. it's very efficient to use and easy to pullout later for reference purposes.
 
Status
Not open for further replies.

Similar threads

Back
Top