Старожил
Сообщения: 165
Благодарности: 7
|
Профиль
|
Отправить PM
| Цитировать
phpprogs, я скачал этот модуль, но он не работает. Выскакивает ошибка:
Fatal error: Class 'sql_db' not found in Z:\home\site\www\online.php on line 11
Код точно такой:
PHP код:
<?php
/*
+---------------------------------------------------------------------+
| Наименование: Модуль "Онлайн пользователи" |
| Автор: Печенюк Сергей aka programmer |
| Сайт: http://phpprogs.ru/ |
| При использовании скрипта ссылка на http://phpprogs.ru/ обязательна |
+---------------------------------------------------------------------+
*/
class online extends sql_db {
// construncor
function online($sqlserver, $sqluser, $sqlpassword, $database) {
$db = parent::sql_db($sqlserver, $sqluser, $sqlpassword, $database, false);
}
function listOnlineUsers($second) {
$sql = "SELECT id_user, login, isbot, count(*) as total FROM tbl_online t where lastdate>=".(time()-$second)." group by login;";
parent::sql_query($sql);
$rowset = parent::sql_fetchrowset();
if (!empty($rowset) and count($rowset)>0) {
$result = array();
foreach ($rowset as $row) {
if ($row['isbot'] == "yes")
$result['bot'][] = $row;
else if ($row['login'] == "guest")
$result['guest'] = $row;
else
$result[] = $row;
}
return $result;
}
else
return false;
}
function isBot() {
$bots = array(
'Mail.Ru' => "Mail Ru",
'spider' => "spider Bot",
'robot' => "robot Bot",
'crawl' => "crawl Bot",
'msiecrawler' => "MSIE Crawler",
'spider17' => "yandex.ru",
'spider17.yandex.ru' => "Вот",
'twiceler' => "Cuil",
'googlebot' => "Google Bot",
'mediapartners-google' => "Google AdSense",
'slurp@inktomi' => "Hot Bot",
'archive_org' => "Archive.org Bot",
'Ask Jeeves' => "Ask Jeeves Bot",
'Lycos' => "Lycos Bot",
'WhatUSeek' => "What You Seek Bot",
'ia_archiver' => "IA.Archiver Bot",
'GigaBlast' => "Gigablast Bot",
'Yahoo!' => "Yahoo Bot",
'Yahoo-MMCrawler' => "Yahoo-MMCrawler Bot",
'TurtleScanner' => "TurtleScanner Bot",
'TurnitinBot' => "TurnitinBot",
'ZipppBot' => "ZipppBot",
'oBot' => "oBot",
'rambler' => "Rambler Bot",
'Jetbot' => "Jet Bot",
'NaverBot' => "Naver Bot",
'libwww' => "Punto Bot",
'aport' => "Aport Bot",
'msnbot' => "MSN Bot",
'MnoGoSearch' => "mnoGoSearch Bot",
'booch' => "Booch Bot",
'Openbot' => "Openfind Bot",
'scooter' => "Altavista Bot",
'WebCrawler' => "Fast Bot",
'WebZIP' => "WebZIP Bot",
'GetSmart' => "GetSmart Bot",
'grub-client' => "GrubClient Bot",
'Vampire' => "Net_Vampire Bot",
'Rambler' => "Rambler Bot",
'appie' => "Walhello appie",
'architext' => "ArchitextSpider",
'jeeves' => "AskJeeves",
'bjaaland' => "Bjaaland",
'ferret' => "Wild Ferret Web Hopper #1, #2, #3",
'gulliver' => "Northern Light Gulliver",
'harvest' => "Harvest",
'htdig' => "ht://Dig",
'linkwalker' => "LinkWalker",
'lycos_' => "Lycos",
'moget' => "moget",
'muscatferret' => "Muscat Ferret",
'myweb' => "Internet Shinchakubin",
'nomad' => "Nomad",
'scooter' => "Scooter",
'slurp' => "Inktomi Slurp",
'voyager' => "Voyager",
'weblayers' => "weblayers",
'antibot' => "Antibot",
'digout4u' => "Digout4u",
'echo' => "EchO!",
'fast-webcrawler' => "Fast-Webcrawler",
'ia_archiver' => "Alexa (IA Archiver)",
'jennybot' => "JennyBot",
'mercator' => "Mercator",
'netcraft' => "Netcraft",
'petersnews' => "Petersnews",
'unlost_web_crawler' => "Unlost Web Crawler",
'voila' => "Voila",
'webbase' => "WebBase",
'wisenutbot' => "WISENutbot",
'fish' => "Fish search",
'abcdatos' => "ABCdatos BotLink",
'acme.spider' => "Acme.Spider",
'ahoythehomepagefinder' => "Ahoy! The Homepage Finder",
'alkaline' => "Alkaline",
'anthill' => "Anthill",
'arachnophilia' => "Arachnophilia",
'arale' => "Arale",
'araneo' => "Araneo",
'aretha' => "Aretha",
'ariadne' => "ARIADNE",
'arks' => "arks",
'aspider' => "ASpider (Associative Spider)",
'atn.txt' => "ATN Worldwide",
'atomz' => "Atomz.com Search Robot",
'auresys' => "AURESYS",
'backrub' => "BackRub",
'bbot' => "BBot",
'bigbrother' => "Big Brother",
'blackwidow' => "BlackWidow",
'blindekuh' => "Die Blinde Kuh",
'bloodhound' => "Bloodhound",
'borg-bot' => "Borg-Bot",
'brightnet' => "bright.net caching robot",
'bspider' => "BSpider",
'cactvschemistryspider' => "CACTVS Chemistry Spider",
'calif' => "Calif",
'cassandra' => "Cassandra",
'cgireader' => "Digimarc Marcspider/CGI",
'checkbot' => "Checkbot",
'christcrawler' => "ChristCrawler.com",
'churl' => "churl",
'cienciaficcion' => "cIeNcIaFiCcIoN.nEt",
'collective' => "Collective",
'combine' => "Combine System",
'conceptbot' => "Conceptbot",
'coolbot' => "CoolBot",
'core' => "Web Core / Roots",
'cosmos' => "XYLEME Robot",
'cruiser' => "Internet Cruiser Robot",
'cusco' => "Cusco",
'cyberspyder' => "CyberSpyder Link Test",
'desertrealm' => "Desert Realm Spider",
'deweb' => "DeWeb© Katalog/Index",
'dienstspider' => "DienstSpider",
'digger' => "Digger",
'diibot' => "Digital Integrity Robot",
'direct_hit' => "Direct Hit Grabber",
'dnabot' => "DNAbot",
'download_express' => "DownLoad Express",
'dragonbot' => "DragonBot",
'dwcp' => "DWCP (Dridus' Web Cataloging Project)",
'e-collector' => "e-collector",
'ebiness' => "EbiNess",
'elfinbot' => "ELFINBOT",
'emacs' => "Emacs-w3 Search Engine",
'emcspider' => "ananzi",
'esther' => "Esther",
'evliyacelebi' => "Evliya Celebi",
'fastcrawler' => "FastCrawler",
'fdse' => "Fluid Dynamics Search Engine robot",
'felix' => "Felix IDE",
'fetchrover' => "FetchRover",
'fido' => "fido",
'finnish' => "Hдmдhдkki",
'fireball' => "KIT-Fireball",
'fouineur' => "Fouineur",
'francoroute' => "Robot Francoroute",
'freecrawl' => "Freecrawl",
'funnelweb' => "FunnelWeb",
'gama' => "gammaSpider, FocusedCrawler",
'gazz' => "gazz",
'gcreep' => "GCreep",
'getbot' => "GetBot",
'geturl' => "GetURL",
'golem' => "Golem",
'grapnel' => "Grapnel/0.01 Experiment",
'griffon' => "Griffon",
'gromit' => "Gromit",
'gulperbot' => "Gulper Bot",
'hambot' => "HamBot",
'havindex' => "havIndex",
'hometown' => "Hometown Spider Pro",
'htmlgobble' => "HTMLgobble",
'hyperdecontextualizer' => "Hyper-Decontextualizer",
'iajabot' => "iajaBot",
'iconoclast' => "Popular Iconoclast",
'ilse' => "Ingrid",
'imagelock' => "Imagelock",
'incywincy' => "IncyWincy",
'informant' => "Informant",
'infoseek' => "InfoSeek Robot 1.0",
'infoseeksidewinder' => "Infoseek Sidewinder",
'infospider' => "InfoSpiders",
'inspectorwww' => "Inspector Web",
'intelliagent' => "IntelliAgent",
'irobot' => "I, Robot",
'iron33' => "Iron33",
'israelisearch' => "Israeli-search",
'javabee' => "JavaBee",
'jbot' => "JBot Java Web Robot",
'jcrawler' => "JCrawler",
'jobo' => "JoBo Java Web Robot",
'jobot' => "Jobot",
'joebot' => "JoeBot",
'jubii' => "The Jubii Indexing Robot",
'jumpstation' => "JumpStation",
'kapsi' => "image.kapsi.net",
'katipo' => "Katipo",
'kilroy' => "Kilroy",
'ko_yappo_robot' => "KO_Yappo_Robot",
'labelgrabber.txt' => "LabelGrabber",
'larbin' => "larbin",
'legs' => "legs",
'linkidator' => "Link Validator",
'linkscan' => "LinkScan",
'lockon' => "Lockon",
'logo_gif' => "logo.gif Crawler",
'macworm' => "Mac WWWWorm",
'magpie' => "Magpie",
'marvin' => "marvin/infoseek",
'mattie' => "Mattie",
'mediafox' => "MediaFox",
'merzscope' => "MerzScope",
'meshexplorer' => "NEC-MeshExplorer",
'mindcrawler' => "MindCrawler",
'mnogosearch' => "mnoGoSearch search engine software",
'momspider' => "MOMspider",
'monster' => "Monster",
'motor' => "Motor",
'muncher' => "Muncher",
'mwdsearch' => "Mwd.Search",
'ndspider' => "NDSpider",
'nederland.zoek' => "Nederland.zoek",
'netcarta' => "NetCarta WebMap Engine",
'netmechanic' => "NetMechanic",
'netscoop' => "NetScoop",
'newscan-online' => "newscan-online",
'nhse' => "NHSE Web Forager",
'northstar' => "The NorthStar Robot",
'nzexplorer' => "nzexplorer",
'objectssearch' => "ObjectsSearch",
'occam' => "Occam",
'octopus' => "HKU WWW Octopus",
'openfind' => "Openfind data gatherer",
'orb_search' => "Orb Search",
'packrat' => "Pack Rat",
'pageboy' => "PageBoy",
'parasite' => "ParaSite",
'patric' => "Patric",
'pegasus' => "pegasus",
'perignator' => "The Peregrinator",
'perlcrawler' => "PerlCrawler 1.0",
'phantom' => "Phantom",
'phpdig' => "PhpDig",
'piltdownman' => "PiltdownMan",
'pimptrain' => "Pimptrain.com's robot",
'pioneer' => "Pioneer",
'pitkow' => "html_analyzer",
'pjspider' => "Portal Juice Spider",
'plumtreewebaccessor' => "PlumtreeWebAccessor",
'poppi' => "Poppi",
'portalb' => "PortalB Spider",
'psbot' => "psbot",
'python' => "The Python Robot",
'raven' => "Raven Search",
'rbse' => "RBSE Spider",
'resumerobot' => "Resume Robot",
'rhcs' => "RoadHouse Crawling System",
'road_runner' => "Road Runner: The ImageScape Robot",
'robbie' => "Robbie the Robot",
'robi' => "ComputingSite Robi/1.0",
'robocrawl' => "RoboCrawl Spider",
'robofox' => "RoboFox",
'robozilla' => "Robozilla",
'roverbot' => "Roverbot",
'rules' => "RuLeS",
'safetynetrobot' => "SafetyNet Robot",
'search-info' => "Sleek",
'search_au' => "Search.Aus-AU.COM",
'searchprocess' => "SearchProcess",
'senrigan' => "Senrigan",
'sgscout' => "SG-Scout",
'shaggy' => "ShagSeeker",
'shaihulud' => "Shai'Hulud",
'sift' => "Sift",
'simbot' => "Simmany Robot Ver1.0",
'site-valet' => "Site Valet",
'sitetech' => "SiteTech-Rover",
'skymob' => "Skymob.com",
'slcrawler' => "SLCrawler",
'smartspider' => "Smart Spider",
'snooper' => "Snooper",
'solbot' => "Solbot",
'speedy' => "Speedy Spider",
'spider_monkey' => "spider_monkey",
'spiderbot' => "SpiderBot",
'spiderline' => "Spiderline Crawler",
'spiderman' => "SpiderMan",
'spiderview' => "SpiderView™",
'spry' => "Spry Wizard Robot",
'ssearcher' => "Site Searcher",
'suke' => "Suke",
'suntek' => "suntek search engine",
'sven' => "Sven",
'tach_bw' => "TACH Black Widow",
'tarantula' => "Tarantula",
'tarspider' => "tarspider",
'techbot' => "TechBOT",
'templeton' => "Templeton",
'titan' => "TITAN",
'titin' => "TitIn",
'tkwww' => "The TkWWW Robot",
'tlspider' => "TLSpider",
'ucsd' => "UCSD Crawl",
'udmsearch' => "UdmSearch",
'urlck' => "URL Check",
'valkyrie' => "Valkyrie",
'verticrawl' => "Verticrawl",
'victoria' => "Victoria",
'visionsearch' => "vision-search",
'voidbot' => "void-bot",
'vwbot' => "VWbot",
'w3index' => "The NWI Robot",
'w3m2' => "W3M2",
'wallpaper' => "WallPaper (alias crawlpaper)",
'wanderer' => "the World Wide Web Wanderer",
'wapspider' => "w@pSpider by wap4.com",
'webbandit' => "WebBandit Web Spider",
'webcatcher' => "WebCatcher",
'webcopy' => "WebCopy",
'webfetcher' => "webfetcher",
'webfoot' => "The Webfoot Robot",
'webinator' => "Webinator",
'weblinker' => "WebLinker",
'webmirror' => "WebMirror",
'webmoose' => "The Web Moose",
'webquest' => "WebQuest",
'webreader' => "Digimarc MarcSpider",
'webreaper' => "WebReaper",
'websnarf' => "Websnarf",
'webspider' => "WebSpider",
'webvac' => "WebVac",
'webwalk' => "webwalk",
'webwalker' => "WebWalker",
'webwatch' => "WebWatch",
'whatuseek' => "whatUseek Winona",
'whowhere' => "WhoWhere Robot",
'wired-digital' => "Wired Digital",
'wmir' => "w3mir",
'wolp' => "WebStolperer",
'wombat' => "The Web Wombat",
'worm' => "The World Wide Web Worm",
'wwwc' => "WWWC Ver 0.2.5",
'wz101' => "WebZinger",
'xget' => "XGET",
'awbot' => "AWBot",
'baiduspider' => "BaiDuSpider",
'bobby' => "Bobby",
'boris' => "Boris",
'bumblebee' => "Bumblebee (relevare.com)",
'cscrawler' => "CsCrawler",
'daviesbot' => "DaviesBot",
'exactseek' => "ExactSeek Crawler",
'ezresult' => "sEzresult",
'gigabot' => "GigaBot",
'gnodspider' => "sGNOD Spider",
'grub' => "Grub.org",
'henrythemiragorobot' => "Mirago",
'holmes' => "Holmes",
'internetseer' => "InternetSeer",
'justview' => "JustView",
'linkbot' => "LinkBot",
'linkchecker' => "LinkChecker",
'metager-linkchecker' => "MetaGer LinkChecker",
'microsoft_url_control' => "Microsoft URL Control",
'nagios' => "Nagios",
'perman' => "Perman surfer",
'pompos' => "Pompos",
'rambler' => "StackRambler",
'redalert' => "Red Alert",
'shoutcast' => "Shoutcast Directory Service",
'slysearch' => "SlySearch",
'surveybot' => "SurveyBot",
'turnitinbot' => "Turn It In",
'turtle' => "Turtle",
'turtlescanner' => "Turtle",
'ultraseek' => "Ultraseek",
'webclipping.com' => "WebClipping.com",
'webcompass' => "webcompass",
'wonderer' => "spider: Web Wombat Redback Spider",
'yahoo-verticalcrawler' => "Yahoo Vertical Crawler",
'zealbot' => "ZealBot",
'zyborg' => "Zyborg",
'BecomeBot' => "Become Bot",
'Yandex' => "Yandex Bot",
'StackRambler' => "Rambler Bot",
'ask jeeves' => "Ask Jeeves Bot",
'lycos' => "Lycos.com Bot",
'whatuseek' => "What You Seek Bot",
'ia_archiver' => "Archive.org Bot"
);
$userAgent = $_SERVER['HTTP_USER_AGENT'];
foreach($bots as $key => $value) {
if(strstr(strtolower($userAgent), strtolower($key))) {
$bot = $value;
}
}
return (isset($bot)? $bot: "");
}
function onlineUserUpdate($cid) {
$sql = "select count(*) as total from tbl_online where sid='{$cid}'";
parent::sql_query($sql);
$total = parent::sql_fetchrow();
if ($total['total'] > 0) {
$sql = "update tbl_online set lastdate=".time().(isset($_SESSION['auth']) && $_SESSION['auth']==1? ", login='".addslashes($_SESSION['name'])."'": ", login='guest'")." where sid='{$cid}'";
parent::sql_query($sql);
}
else {
if (isset($_SESSION['auth']) && $_SESSION['auth']==1) {
$login = $_SESSION['name'];
$id_user = $_SESSION['id'];
$isbot = 'no';
}
else {
$result = $this->isbot();
if ($result != "") {
$login = $result;
$id_user = 0;
$isbot = 'yes';
}
else {
$login = "guest";
$id_user = 0;
$isbot = 'no';
}
}
$sql = "insert into tbl_online (login, isbot, lastdate, sid, id_user) VALUES ('".addslashes($login)."', '{$isbot}', ".time().", '{$cid}', {$id_user});";
parent::sql_query($sql);
}
}
function offlineUserDelete($second) {
$sql = "delete from tbl_online where lastdate<".(time()-$second);
parent::sql_query($sql);
}
}
?>
Базу данных создал.
|