fetchAll($sql); if ($query && mysql_num_rows($query)) { $sess = mysql_fetch_assoc($query); if ($secure['session_check_ip'] && $ip != $sess['ip']) { session_kill ($id); return false; } if ($secure['session_check_agent'] && $agent != $sess['agent']) { session_kill ($id); return false; } return $sess['data']; } return ''; } function session_write ($id, $sess_data) { global $sess_save_path, $sess_session_name, $current_category, $secure; $ip = isset($_SERVER['REMOTE_ADDR']) ? sprintf("%u", ip2long($_SERVER['REMOTE_ADDR'])) : 0; $agent = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 0; $cid = isset($current_category['category_id']) ? (integer)$current_category['category_id'] : 0; $sql = 'select session_id from wmsession where session_id="'.$id.'"'; $query = sql_query ($sql, __FILE__, __LINE__); if ($query && mysql_num_rows($query)) { $sess = mysql_fetch_assoc($query); if ($secure['session_check_ip'] && $ip != $sess['ip']) { session_kill ($id); return false; } if ($secure['session_check_agent'] && $agent != $sess['agent']) { session_kill ($id); return false; } // $sql = 'update wmsession // set data=\''.$sess_data.'\', ip='.$ip.', agent="'.$agent.'", location='.$cid.', update_date=now() // where session_id="'.$id.'"'; $update = [ 'data' => $sess_data, 'ip' => $ip, 'agent' => $agent, 'location' => $cid, 'update_date' => now(), ]; $query = Zend_Registry::get('db')->update(MEDGORODOK_DB.'wmsession', $update, 'session_id = '. $id); } else { // $sql = 'insert into wmsession // (session_id, data, ip, agent, location, update_date) // values("'.$id.'", \''.$sess_data.'\', '.$ip.', "'.$agent.'", '.$cid.', now())'; $insert = [ 'session_id' => $id, 'data' => $sess_data, 'ip' => $ip, 'agent' => $agent, 'location' => $cid, 'update_date' => now(), ]; $query = Zend_Registry::get('db')->insert(MEDGORODOK_DB.'wmsession.', $insert); } // $query = sql_query ($sql, __FILE__, __LINE__); if ($query) { return true; } return false; } function session_kill ($id) { global $sess_save_path, $sess_session_name; // $sql = 'update wmsession // set data="" // where session_id like "'.$id.'"'; // $query = sql_query ($sql, __FILE__, __LINE__); $update = ['data' => '']; $query = Zend_Registry::get('db')->update(MEDGORODOK_DB.'wmsession', $update, 'session_id = '. $id); if ($query)) { return true; } return false; } function session_gc ($maxlifetime) { $sql = 'delete from wmsession where update_date < now() - interval '.$maxlifetime.' second'; $query = sql_query ($sql, __FILE__, __LINE__); if ($query && mysql_affected_rows($query)) { return true; } return false; } session_set_save_handler ("session_open", "session_close", "session_read", "session_write", "session_kill", "session_gc"); ?> Medgorodok / Каталог препаратов / Биологически активные добавки
Поиск лекарства
Рейтинг UralWeb