miz_luvly@hotmail.com Posted June 6, 2006 Share Posted June 6, 2006 Hi GuyzAfter getting assistance on the previous posts, here I am with another one. I want to record the time when user login and logout of the web. I have searched through the web and found web stats and access counters etc but I dont need something as detailed as that I have a very small website with users given login passwords to go and add reports (done in php/mysql). Can someone direct me to a suitable tutorial or a sample I can look at -- thanks. Quote Link to comment https://forums.phpfreaks.com/topic/11321-access-logs-phpmysql/ Share on other sites More sharing options...
digitalgod Posted June 6, 2006 Share Posted June 6, 2006 [!--quoteo(post=380577:date=Jun 6 2006, 08:48 AM:name=sab)--][div class=\'quotetop\']QUOTE(sab @ Jun 6 2006, 08:48 AM) [snapback]380577[/snapback][/div][div class=\'quotemain\'][!--quotec--]Hi GuyzAfter getting assistance on the previous posts, here I am with another one. I want to record the time when user login and logout of the web. I have searched through the web and found web stats and access counters etc but I dont need something as detailed as that I have a very small website with users given login passwords to go and add reports (done in php/mysql). Can someone direct me to a suitable tutorial or a sample I can look at -- thanks.[/quote]just add something like this after the login verification is succesful$logged = date("H:i:s");and UPDATE it in your user's table same thing for loggout, just make sure you make 2 new rows in your database, one for the time they logged in and the other for the time they logged out Quote Link to comment https://forums.phpfreaks.com/topic/11321-access-logs-phpmysql/#findComment-42450 Share on other sites More sharing options...
miz_luvly@hotmail.com Posted June 7, 2006 Author Share Posted June 7, 2006 [!--quoteo(post=380640:date=Jun 6 2006, 11:00 AM:name=digitalgod)--][div class=\'quotetop\']QUOTE(digitalgod @ Jun 6 2006, 11:00 AM) [snapback]380640[/snapback][/div][div class=\'quotemain\'][!--quotec--]just add something like this after the login verification is succesful$logged = date("H:i:s");and UPDATE it in your user's table same thing for loggout, just make sure you make 2 new rows in your database, one for the time they logged in and the other for the time they logged out[/quote]thanks for the reply but if I use update I will overwrite the login/logout time. I want keep the old login as well as new one.I might need a new table for this but not sure. Also how can i have 2 timestamp columns in a table one for login and one for logoutyou help is much appreciatedthanks Quote Link to comment https://forums.phpfreaks.com/topic/11321-access-logs-phpmysql/#findComment-42728 Share on other sites More sharing options...
digitalgod Posted June 7, 2006 Share Posted June 7, 2006 [!--quoteo(post=380926:date=Jun 7 2006, 05:02 AM:name=sab)--][div class=\'quotetop\']QUOTE(sab @ Jun 7 2006, 05:02 AM) [snapback]380926[/snapback][/div][div class=\'quotemain\'][!--quotec--]thanks for the reply but if I use update I will overwrite the login/logout time. I want keep the old login as well as new one.I might need a new table for this but not sure. Also how can i have 2 timestamp columns in a table one for login and one for logoutyou help is much appreciatedthanks[/quote]you can have as many timestamp columns in a table as you want. If you want to keep the old login you'll probably have to make a new table with just: id users login_time logout_time , where users is the name of your user that logged in/out. Quote Link to comment https://forums.phpfreaks.com/topic/11321-access-logs-phpmysql/#findComment-42742 Share on other sites More sharing options...
miz_luvly@hotmail.com Posted June 7, 2006 Author Share Posted June 7, 2006 [!--quoteo(post=380940:date=Jun 7 2006, 05:57 AM:name=digitalgod)--][div class=\'quotetop\']QUOTE(digitalgod @ Jun 7 2006, 05:57 AM) [snapback]380940[/snapback][/div][div class=\'quotemain\'][!--quotec--]you can have as many timestamp columns in a table as you want. If you want to keep the old login you'll probably have to make a new table with just: id users login_time logout_time , where users is the name of your user that logged in/out.[/quote]But I get error if I put two timestamps. Can you explain how to go about and do this. thanks Quote Link to comment https://forums.phpfreaks.com/topic/11321-access-logs-phpmysql/#findComment-42748 Share on other sites More sharing options...
miz_luvly@hotmail.com Posted June 7, 2006 Author Share Posted June 7, 2006 [!--quoteo(post=380946:date=Jun 7 2006, 06:12 AM:name=sab)--][div class=\'quotetop\']QUOTE(sab @ Jun 7 2006, 06:12 AM) [snapback]380946[/snapback][/div][div class=\'quotemain\'][!--quotec--]But I get error if I put two timestamps. Can you explain how to go about and do this. thanks[/quote]I have solved half of the problem, I have managed to insert login time but how do i insert logout time can any1 help plzzz.thanks in advance here is my logout code:session_start(); $_SESSION['logged_in'] = 0; setcookie('login_cookie', false, time() - 3600, '/secure/', 'index.php'); mysql_query("update access_log set logout_datetime = date('Y-m-d h:i:sa', time()) "); session_destroy(); header("Location: index.php");?> Quote Link to comment https://forums.phpfreaks.com/topic/11321-access-logs-phpmysql/#findComment-42800 Share on other sites More sharing options...
digitalgod Posted June 7, 2006 Share Posted June 7, 2006 [!--quoteo(post=380999:date=Jun 7 2006, 10:19 AM:name=sab)--][div class=\'quotetop\']QUOTE(sab @ Jun 7 2006, 10:19 AM) [snapback]380999[/snapback][/div][div class=\'quotemain\'][!--quotec--]I have solved half of the problem, I have managed to insert login time but how do i insert logout time can any1 help plzzz.thanks in advance here is my logout code:session_start(); $_SESSION['logged_in'] = 0; setcookie('login_cookie', false, time() - 3600, '/secure/', 'index.php'); mysql_query("update access_log set logout_datetime = date('Y-m-d h:i:sa', time()) "); session_destroy(); header("Location: index.php");?>[/quote]mysql_query("UPDATE access_log SET logout_datetime = date('Y-m-d h:i:sa', time()) WHERE id = 1 "); should do the trick Quote Link to comment https://forums.phpfreaks.com/topic/11321-access-logs-phpmysql/#findComment-42890 Share on other sites More sharing options...
miz_luvly@hotmail.com Posted June 8, 2006 Author Share Posted June 8, 2006 [!--quoteo(post=381091:date=Jun 7 2006, 01:15 PM:name=digitalgod)--][div class=\'quotetop\']QUOTE(digitalgod @ Jun 7 2006, 01:15 PM) [snapback]381091[/snapback][/div][div class=\'quotemain\'][!--quotec--]mysql_query("UPDATE access_log SET logout_datetime = date('Y-m-d h:i:sa', time()) WHERE id = 1 "); should do the trick[/quote]The query still not updating logout_datetime column :(+--------+----------+---------------------+---------------------+| log_id | username | login_datetime | logout_datetime |+--------+----------+---------------------+---------------------+| 1 | abc | 2006-06-07 17:10:35 | 0000-00-00 00:00:00 || 2 | abc | 2006-06-07 17:11:49 | 0000-00-00 00:00:00 |+--------+----------+---------------------+---------------------+2 rows in set (0.05 sec)any suggestions? Quote Link to comment https://forums.phpfreaks.com/topic/11321-access-logs-phpmysql/#findComment-43098 Share on other sites More sharing options...
digitalgod Posted June 8, 2006 Share Posted June 8, 2006 [!--quoteo(post=381305:date=Jun 8 2006, 05:49 AM:name=sab)--][div class=\'quotetop\']QUOTE(sab @ Jun 8 2006, 05:49 AM) [snapback]381305[/snapback][/div][div class=\'quotemain\'][!--quotec--]The query still not updating logout_datetime column :(+--------+----------+---------------------+---------------------+| log_id | username | login_datetime | logout_datetime |+--------+----------+---------------------+---------------------+| 1 | abc | 2006-06-07 17:10:35 | 0000-00-00 00:00:00 || 2 | abc | 2006-06-07 17:11:49 | 0000-00-00 00:00:00 |+--------+----------+---------------------+---------------------+2 rows in set (0.05 sec)any suggestions?[/quote]just replace the part that says WHERE id = 1 with WHERE username = and that variable or session you used to store the usernamesomething like mysql_query("UPDATE access_log SET logout_datetime = date('Y-m-d h:i:sa', time()) WHERE username = '$username' "); Quote Link to comment https://forums.phpfreaks.com/topic/11321-access-logs-phpmysql/#findComment-43294 Share on other sites More sharing options...
miz_luvly@hotmail.com Posted June 9, 2006 Author Share Posted June 9, 2006 [!--quoteo(post=381503:date=Jun 8 2006, 12:49 PM:name=digitalgod)--][div class=\'quotetop\']QUOTE(digitalgod @ Jun 8 2006, 12:49 PM) [snapback]381503[/snapback][/div][div class=\'quotemain\'][!--quotec--]just replace the part that says WHERE id = 1 with WHERE username = and that variable or session you used to store the usernamesomething like mysql_query("UPDATE access_log SET logout_datetime = date('Y-m-d h:i:sa', time()) WHERE username = '$username' ");[/quote]Thanks digitalgod it worked. :) Quote Link to comment https://forums.phpfreaks.com/topic/11321-access-logs-phpmysql/#findComment-43567 Share on other sites More sharing options...
miz_luvly@hotmail.com Posted June 16, 2006 Author Share Posted June 16, 2006 [!--quoteo(post=381779:date=Jun 9 2006, 04:00 AM:name=sab)--][div class=\'quotetop\']QUOTE(sab @ Jun 9 2006, 04:00 AM) [snapback]381779[/snapback][/div][div class=\'quotemain\'][!--quotec--]Thanks digitalgod it worked. :)[/quote]Hi Here I am again, I thought i have managed to make it work but i didnt. the problem is when I update logout time for specific user, the whole column get updated for example:[!--quoteo--][div class=\'quotetop\']QUOTE[/div][div class=\'quotemain\'][!--quotec--]+--------+----------+---------------------+---------------------+| log_id | username | login_datetime | logout_datetime |+--------+----------+---------------------+---------------------+| 1 | abc | 2006-06-07 17:10:35 | 2006-06-16 14:11:29 || 2 | def | 2006-06-07 17:11:49 | 2006-06-16 14:11:29 || 4 | ghi | 2006-06-16 12:05:02 | 2006-06-16 14:11:29 || 5 | jkl | 2006-06-16 12:08:27 | 2006-06-16 14:11:29 |[/quote]the code is:[!--quoteo--][div class=\'quotetop\']QUOTE[/div][div class=\'quotemain\'][!--quotec--]<? require "conn.php"; Session_start(); $_SESSION['logged_in'] = 0; $_SESSION['username'] = $_POST['username']; $_SESSION['log_id'] = log_id; setcookie('login_cookie', false, time() - 3600, '/secure/', '.index1.php'); mysql_query("UPDATE access_log SET logout_datetime = now() WHERE log_id=log_id and username=username"); or die (mysql_error()); session_destroy(); header("Location: index1.php");?>[/quote]here is my login script:[!--quoteo--][div class=\'quotetop\']QUOTE[/div][div class=\'quotemain\'][!--quotec--]<?ob_start();session_start();$_SESSION['time_start']=$start;$_SESSION['log_id']= log_id;if(isset($_SESSION['username']) && isset($_SESSION['password'])) { header ("Location: page.php");$sql = mysql_query("INSERT INTO users (first_name, last_name, email_address, username, password, info, signup_date) VALUES('$first_name', '$last_name', '$email_address', '$username', '$db_password', '$info2', now())") or die (mysql_error()); } //end if logged inif(isset($_POST['submit'])) { if(!$_POST['username']) die("Error: You must enter your username before logging in."); if(!$_POST['password']) die("Error: You must enter your password before logging in."); mysql_query("INSERT INTO access_log (username,login_datetime) VALUES('$username', now())") or die (mysql_error()); $get_user = mysql_query("SELECT * FROM `users` WHERE username = '".$_POST['username']."' AND user_password = '".md5($_POST['password'])."'");$q = mysql_fetch_object($get_user); if(!$q) die("Login Failure: An error occured, please verify your username and password are correct.");//set session variables $_SESSION['logged_in'] = 1;$_SESSION['log_id']= $_POST['log_id'];$_SESSION['username'] = $_POST['username']; session_write_close();header("Location: page.php");} else {//show login form?><html><head><title>Rep sign-up page</title></head><body><h4>Existing user please login</h4><form name="login" method="post" action="<? $_SERVER['PHP_SELF']; ?>"><table><tr> <td>Username:<input type="text" id="username" name="username"></td></tr><tr> <td>Password:<input type="password" id="password" name="password"></td></tr><tr> <td>Submit: <input type="submit" value="Login" name="submit" id="submit"></td></tr></table></form></body></html><?}//end else?>[/quote]Can some1 help plzzz.thanks in advance Quote Link to comment https://forums.phpfreaks.com/topic/11321-access-logs-phpmysql/#findComment-46258 Share on other sites More sharing options...
redarrow Posted June 16, 2006 Share Posted June 16, 2006 [code]logout.php<?require "conn.php";Session_start();$_SESSION['logged_in'] = 0;$_SESSION['username'] = $_POST['username']; $_SESSION['log_id'] = log_id;setcookie('login_cookie', false, time() - 3600, '/secure/', '.index1.php');if($_GET["cmd"]=="update") {$logout_datetime=date('Y-m-d h:i:sa', time());$logout_datetime=$_POST['logout_datetime'];mysql_query("UPDATE access_log SET logout_datetime = '$logout_datetime' WHERE log_id=log_id and username=username"); or die (mysql_error()); }session_destroy();header("Location: index1.php");?>[/code]The link to update and log out.[code]<a href="logout.php?&cmd=update&log_id=$log_id">Logout</a>[/code] Quote Link to comment https://forums.phpfreaks.com/topic/11321-access-logs-phpmysql/#findComment-46267 Share on other sites More sharing options...
miz_luvly@hotmail.com Posted June 19, 2006 Author Share Posted June 19, 2006 [!--quoteo(post=384564:date=Jun 16 2006, 09:20 AM:name=redarrow)--][div class=\'quotetop\']QUOTE(redarrow @ Jun 16 2006, 09:20 AM) [snapback]384564[/snapback][/div][div class=\'quotemain\'][!--quotec--][code]logout.php<?require "conn.php";Session_start();$_SESSION['logged_in'] = 0;$_SESSION['username'] = $_POST['username']; $_SESSION['log_id'] = log_id;setcookie('login_cookie', false, time() - 3600, '/secure/', '.index1.php');if($_GET["cmd"]=="update") {$logout_datetime=date('Y-m-d h:i:sa', time());$logout_datetime=$_POST['logout_datetime'];mysql_query("UPDATE access_log SET logout_datetime = '$logout_datetime' WHERE log_id=log_id and username=username"); or die (mysql_error()); }session_destroy();header("Location: index1.php");?>[/code]The link to update and log out.[code]<a href="logout.php?&cmd=update&log_id=$log_id">Logout</a>[/code][/quote][!--quoteo--][div class=\'quotetop\']QUOTE[/div][div class=\'quotemain\'][!--quotec--]I have tried that but now I get the following:[code]+--------+----------+---------------------+---------------------+| log_id | username | login_datetime | logout_datetime |+--------+----------+---------------------+---------------------+| 50 | | 2006-06-19 17:06:49 | 0000-00-00 00:00:00 || 51 | | 2006-06-19 17:07:25 | 0000-00-00 00:00:00 || 52 | | 2006-06-19 17:08:16 | 0000-00-00 00:00:00 || 53 | | 2006-06-19 17:09:33 | 0000-00-00 00:00:00 || 54 | | 2006-06-19 17:10:08 | 0000-00-00 00:00:00 |+--------+----------+---------------------+---------------------+[/code]Username is blank and logout column remain '0000-00-00 00:00:00'here is the table structure if helps:[code]+-----------------+-------------+------+-----+---------------------+----------------+| Field | Type | Null | Key | Default | Extra |+-----------------+-------------+------+-----+---------------------+----------------+| log_id | int(25) | NO | PRI | NULL | auto_increment || username | varchar(25) | NO | | | || login_datetime | datetime | NO | | 0000-00-00 00:00:00 | || logout_datetime | datetime | NO | | 0000-00-00 00:00:00 | |+-----------------+-------------+------+-----+---------------------+------------[/code]Any suggestions plzzzthanks[/quote] Quote Link to comment https://forums.phpfreaks.com/topic/11321-access-logs-phpmysql/#findComment-47342 Share on other sites More sharing options...
miz_luvly@hotmail.com Posted June 23, 2006 Author Share Posted June 23, 2006 please refer to: Posted Jun 16 2006, 08:37 AMCan anyone help plzzzThanks in advanceSab Quote Link to comment https://forums.phpfreaks.com/topic/11321-access-logs-phpmysql/#findComment-48746 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.