@@ -88,25 +88,21 @@ function write ($session_id, $session_data) {
8888 // Dont write session_data to DB if session data has not been changed after reading it.
8989 if (isset ($ this ->session_array ['session_data ' ]) && $ this ->session_array ['session_data ' ] != '' && $ this ->session_array ['session_data ' ] == $ session_data ) {
9090 $ session_id = $ this ->db ->quote ($ session_id );
91- $ last_updated = date ('Y-m-d H:i:s ' );
92- $ this ->db ->query ("UPDATE sys_session SET last_updated = ' $ last_updated' WHERE session_id = ' $ session_id' " );
91+ $ this ->db ->query ("UPDATE sys_session SET last_updated = NOW() WHERE session_id = ' $ session_id' " );
9392 return true ;
9493 }
9594
9695
9796 if (@$ this ->session_array ['session_id ' ] == '' ) {
9897 $ session_id = $ this ->db ->quote ($ session_id );
99- $ date_created = date ('Y-m-d H:i:s ' );
100- $ last_updated = date ('Y-m-d H:i:s ' );
10198 $ session_data = $ this ->db ->quote ($ session_data );
102- $ sql = "REPLACE INTO sys_session (session_id,date_created,last_updated,session_data,permanent) VALUES (' $ session_id',' $ date_created ',' $ last_updated ' ,'$ session_data',' " . ($ this ->permanent ? 'y ' : 'n ' ) . "') " ;
99+ $ sql = "REPLACE INTO sys_session (session_id,date_created,last_updated,session_data,permanent) VALUES (' $ session_id',NOW(),NOW() ,' $ session_data',' " . ($ this ->permanent ? 'y ' : 'n ' ) . "') " ;
103100 $ this ->db ->query ($ sql );
104101
105102 } else {
106103 $ session_id = $ this ->db ->quote ($ session_id );
107- $ last_updated = date ('Y-m-d H:i:s ' );
108104 $ session_data = $ this ->db ->quote ($ session_data );
109- $ sql = "UPDATE sys_session SET last_updated = ' $ last_updated ' , session_data = '$ session_data' " . ($ this ->permanent ? ", `permanent` = 'y' " : "" ) . " WHERE session_id = ' $ session_id' " ;
105+ $ sql = "UPDATE sys_session SET last_updated = NOW() , session_data = ' $ session_data' " . ($ this ->permanent ? ", `permanent` = 'y' " : "" ) . " WHERE session_id = ' $ session_id' " ;
110106 $ this ->db ->query ($ sql );
111107
112108 }
@@ -128,18 +124,11 @@ function gc ($max_lifetime) {
128124 /*if($this->timeout > 0) {
129125 $this->db->query("DELETE FROM sys_session WHERE last_updated < DATE_SUB(NOW(), INTERVAL " . intval($this->timeout) . " MINUTE)");
130126 } else {*/
131- $ real_now = date ('Y-m-d H:i:s ' );
132- $ dt1 = strtotime ("$ real_now - $ max_lifetime seconds " );
133- $ dt2 = date ('Y-m-d H:i:s ' , $ dt1 );
134-
135- $ sql = "DELETE FROM sys_session WHERE last_updated < ' $ dt2' AND `permanent` != 'y' " ;
127+ $ sql = "DELETE FROM sys_session WHERE last_updated < DATE_SUB(NOW(), INTERVAL " . intval ($ max_lifetime ) . " SECOND) AND `permanent` != 'y' " ;
136128 $ this ->db ->query ($ sql );
137129
138130 /* delete very old even if they are permanent */
139- $ dt1 = strtotime ("$ real_now -365 days " );
140- $ dt2 = date ('Y-m-d H:i:s ' , $ dt1 );
141-
142- $ sql = "DELETE FROM sys_session WHERE last_updated < ' $ dt2' " ;
131+ $ sql = "DELETE FROM sys_session WHERE last_updated < DATE_SUB(NOW(), INTERVAL 1 YEAR) " ;
143132 $ this ->db ->query ($ sql );
144133 //}
145134
0 commit comments