Make your own free website on Tripod.com
'Creation of account', 'create' => 'is completed !', 'failed' => 'was not possible !', 'not_all' => 'Fields are filled not all', 'taken' => 'is already taken !', 'playerson' => 'players online', 'off' => 'is offline', 'name' => 'Account Name', 'password' => 'Password', 'ip_limit' => Array('From your IP ',' accounts are already created'), 'char' => Array('Name','Race','Class','LvL','Location'), ); break; case "ru": $button="http://i71.photobucket.com/albums/i150/Vereonx/create_ru.gif"; $text = Array( 'acc' => 'Создание аккаунта', 'create' => 'завершено !', 'failed' => 'невозможно !', 'not_all' => 'Заполнены не все поля', 'taken' => 'is already taken !', 'playerson' => 'игроков на сервере', 'off' => 'сейчас отключен', 'name' => 'Имя Аккаунта', 'password' => 'Пароль', 'ip_limit' => Array('С вашего IP ',' аккаунтов уже создано'), 'char' => Array('Персонаж','Раса','Класс','ЛвЛ','Расположение'), ); break; } $maps_a = Array( 0 => 'Azeroth', 1 => 'Kalimdor', 2 => 'UnderMine', 13 => 'Test zone', 17 => 'Kalidar', 30 => 'Alterac Valley', 33 => 'Shadowfang Keep', 34 => 'The Stockade', 35 => 'Stormwind Prison', 36 => 'Deadmines', 37 => 'Plains of Snow', 43 => 'Wailing Caverns', 44 => 'Monastery Interior', 47 => 'Razorfen Kraul', 48 => 'Blackfathom Deeps', 70 => 'Uldaman', 90 => 'Gnomeregan', 109 => 'Sunken Temple', 129 => 'Razorfen Downs', 169 => 'Emerald Forest', 189 => 'Scarlet Monastery', 209 => 'Zul\'Farrak', 229 => 'Blackrock Spire', 230 => 'Blackrock Depths', 249 => 'Onyxias Lair', 269 => 'Caverns of Time', 289 => 'Scholomance', 309 => 'Zul\'Gurub', 329 => 'Stratholme', 349 => 'Maraudon', 369 => 'Deeprun Tram', 389 => 'Ragefire Chasm', 409 => 'The Molten Core', 429 => 'Dire Maul', 449 => 'Alliance PVP Barracks', 450 => 'Horde PVP Barracks', 451 => 'Development Land', 469 => 'Blackwing Lair', 489 => 'Warsong Gulch', 509 => 'Ruins of Ahn\'Qiraj', 529 => 'Arathi Basin', 530 => 'Burning Crusade Zones', 531 => 'Temple of Ahn\'Qiraj', 532 => 'Karazhan', 533 => 'Naxxramas', 534 => 'Hyjal Past', 540 => 'Shattered Halls', 542 => 'Blood Furnace', 543 => 'Hellfire Ramparts', 544 => 'Magtheridon\'s Lair', 545 => 'The Steamvault', 546 => 'The Black Temple', 547 => 'The Slave Pens', 548 => 'Coilfang Resevoir', 550 => 'The Eye', 552 => 'The Arcatraz', 553 => 'The Botanica', 554 => 'The Mechanar', 555 => 'Shadow Labyrinth', 556 => 'Sethekk Halls', 557 => 'Mana-Tombs', 558 => 'Auchenai Crypts', 559 => 'Nagrand Arena', 560 => 'Hillsbrad Past', 562 => 'Blade\'s Edge Arena', 564 => 'Black Temple', 565 => 'Gruul\'s Lair', 566 => 'Eye of the Storm', 568 => 'Zul\'aman', ); $zone = Array( 0 => Array( Array(700,10,1244,1873,'Undercity',1497), Array(-840,-1330,-5050,-4560,'Ironforge',1537), Array(1190,200,-9074,-8280,'Stormwind City',1519), Array(-2170,-4400,-7348,-6006,'Badlands',3), Array(-500,-4400,-4485,-2367,'Wetlands',11), Array(2220,-2250,-15422,-11299,'Stranglethorn Vale',33), Array(-1724,-3540,-9918,-8667,'Redridge Mountains',44), Array(-2480,-4400,-6006,-4485,'Loch Modan',38), Array(662,-1638,-11299,-9990,'Duskwood',10), Array(-1638,-2344,-11299,-9918,'Deadwind Pass',41), Array(834,-1724,-9990,-8526,'Elwynn Forest',12), Array(-500,-3100,-8667,-7348,'Burning Steppes',46), Array(-608,-2170,-7348,-6285,'Searing Gorge',51), Array(2000,-2480,-6612,-4485,'Dun Morogh',1), Array(-1575,-5425,-432,805,'The Hinterlands',47), Array(3016,662,-11299,-9400,'Westfall',40), Array(600,-1575,-1874,220,'Hillsbrad Foothills',267), Array(-2725,-6056,805,3800,'Eastern Plaguelands',139), Array(-850,-2725,805,3400,'Western Plaguelands',28), Array(2200,600,-900,1525,'Silverpine Forest',130), Array(2200,-850,1525,3400,'Tirisfal Glades',85), Array(-2250,-3520,-12800,-10666,'Blasted Lands',4), Array(-2344,-4516,-11070,-9600,'Swamp of Sorrows',8), Array(-1575,-3900,-2367,-432,'Arathi Highlands',45), Array(600,-1575,220,1525,'Alterac Mountains',36), ), 1 => Array( Array(2698,2030,9575,10267,'Darnassus',1657), Array(326,-360,-1490,-910,'Thunder Bluff',1638), Array(-3849,-4809,1387,2222,'Orgrimmar',1637), Array(-1300,-3250,7142,8500,'Moonglade',493), Array(2021,-400,-9000,-6016,'Silithus',1377), Array(-2259,-7000,4150,8500,'Winterspring',618), Array(-400,-2094,-8221,-6016,'Un\'Goro Crater',490), Array(-590,-2259,3580,7142,'Felwood',361), Array(-3787,-8000,1370,6000,'Azshara',16), Array(-1900,-5500,-10475,-6825,'Tanaris',440), Array(-2478,-5500,-5135,-2330,'Dustwallow Marsh',15), Array(360,-1536,-3474,-412,'Mulgore',215), Array(4000,-804,-6828,-2477,'Feralas',357), Array(3500,360,-2477,372,'Desolace',405), Array(-804,-5500,-6828,-4566,'Thousand Needles',400), Array(-3758,-5500,-1300,1370,'Durotar',14), Array(1000,-3787,1370,4150,'Ashenvale',331), Array(2500,-1300,4150,8500,'Darkshore',148), Array(3814,-1100,8600,11831,'Teldrassil',141), Array(3500,-804,-412,3580,'Stonetalon Mountains',406), Array(-804,-4200,-4566,1370,'The Barrens',17), ), 530 => Array( Array(6135.25,4829,-2344.78,-1473.95,'Shattrath City',3703), Array(-6400.75,-7612.20,9346.93,10153.70,'Silvermoon City',3487), Array(5483.33,-91.66,1739.58,5456.25,'Netherstorm',3523), Array(7083.33,1683.33,-4600,-999.99,'Terokkar Forest',3519), Array(10295.83,4770.83,-3641.66,41.66,'Nagrand',3518), Array(-10075,-13337.49,-2933.33,-758.33,'Bloodmyst Isle',3525), Array(8845.83,3420.83,791.66,4408.33,'Blades Edge Mountains',3522), Array(4225,-1275,-5614.58,-1947.91,'Shadowmoon Valley',3520), Array(-11066.36,-12123.13,-4314.37,-3609.68,'The Exodar',3557), Array(9475,4447.91,-1416.66,1935.41,'Zangarmarsh',3521), Array(5539.58,375,-1962.49,1481.25,'Hellfire Peninsula',3483), Array(-10500,-14570.83,-5508.33,-2793.75,'Azuremyst Isle',3524), Array(-5283.33,-8583.33,6066.66,8266.66,'Ghostlands',3433), Array(-4487,-9412,7758,11041,'Eversong Woods',3430) ), ); $def = Array( 'character_race' => Array( 1 => 'Human', 2 => 'Orc', 3 => 'Dwarf', 4 => 'Night Elf', 5 => 'Undead', 6 => 'Tauren', 7 => 'Gnome', 8 => 'Troll', 9 => 'Goblin', 10 => 'Blood Elf', 11 => 'Draenei', ), 'character_class' => Array( 1 => 'Warrior', 2 => 'Paladin', 3 => 'Hunter', 4 => 'Rogue', 5 => 'Priest', 7 => 'Shaman', 8 => 'Mage', 9 => 'Warlock', 11 => 'Druid', ), ); class DBLayer { var $link_id; var $query_result; var $saved_queries = array(); var $num_queries = 0; function DBLayer($db_host, $db_username, $db_password, $db_name) { $this->link_id = @mysql_connect($db_host, $db_username, $db_password, true); if ($this->link_id) { if (@mysql_select_db($db_name, $this->link_id)) return $this->link_id; else error('Unable to select database. MySQL reported: '.mysql_error(), __FILE__, __LINE__); } else error('Unable to connect to MySQL server. MySQL reported: '.mysql_error(), __FILE__, __LINE__); } function query($sql) { $this->query_result = @mysql_query($sql, $this->link_id); if ($this->query_result) { ++$this->num_queries; return $this->query_result; } else { return false; } } function result($query_id = 0, $row = 0) { return ($query_id) ? @mysql_result($query_id, $row) : false; } function fetch_assoc($query_id = 0) { return ($query_id) ? @mysql_fetch_assoc($query_id) : false; } function fetch_row($query_id = 0) { return ($query_id) ? @mysql_fetch_row($query_id) : false; } function num_rows($query_id = 0) { return ($query_id) ? @mysql_num_rows($query_id) : false; } function affected_rows() { return ($this->link_id) ? @mysql_affected_rows($this->link_id) : false; } function insert_id() { return ($this->link_id) ? @mysql_insert_id($this->link_id) : false; } function get_num_queries() { return $this->num_queries; } function get_saved_queries() { return $this->saved_queries; } function free_result($query_id = false) { return ($query_id) ? @mysql_free_result($query_id) : false; } function escape($str) { if (function_exists('mysql_real_escape_string')) return mysql_real_escape_string($str, $this->link_id); else return mysql_escape_string($str); } function error() { $result['error_sql'] = @current(@end($this->saved_queries)); $result['error_no'] = @mysql_errno($this->link_id); $result['error_msg'] = @mysql_error($this->link_id); return $result; } function close() { if ($this->link_id) { if ($this->query_result) @mysql_free_result($this->query_result); return @mysql_close($this->link_id); } else return false; } } function error($message, $file, $line, $db_error = false) { global $siteerrors; $s = "\t\t".'Error: '.$message.'.'."\n"; echo $s; } function get_zone_name($mapid, $x, $y){ global $maps_a, $zone; if (!empty($maps_a[$mapid])) { $zmap=$maps_a[$mapid]; if (($mapid==0) or ($mapid==1) or ($mapid==530)) { $i=0; $c=count($zone[$mapid]); while ($i<$c) { if ($zone[$mapid][$i][2] < $x AND $zone[$mapid][$i][3] > $x AND $zone[$mapid][$i][1] < $y AND $zone[$mapid][$i][0] > $y) $zmap=$zone[$mapid][$i][4]; $i++; } } } else $zmap="Unknown zone"; return $zmap; } function test_realm(){ global $server, $port; $s = @fsockopen("$server", $port, $ERROR_NO, $ERROR_STR,(float)0.5); if($s){@fclose($s);return true;} else return false; } function get_realm_name(){ global $hostr, $userr, $passwordr, $dbr, $database_encoding; $realm_db = new DBLayer($hostr, $userr, $passwordr, $dbr); $realm_db->query("SET NAMES $database_encoding"); $query = $realm_db->query("SELECT * FROM `realmlist`"); $result = $realm_db->fetch_assoc($query); $realm_db->close(); unset($realm_db); return($result['name']); } if (empty($_POST['username']) and empty($_POST['passw']) and empty($_POST['email'])) { $cont='  
 
 
Burning Crusade Enabled? 
'; } elseif (empty($_POST['username']) or empty($_POST['passw']) or empty($_POST['email'])) { $cont=' '.$text["not_all"].'




'; } else { $username = htmlspecialchars(trim("$_POST[username]")); $passw = trim($_POST['passw']); $email = htmlspecialchars(trim($_POST['email'])); $ip = getenv('REMOTE_ADDR'); // сделать проверку на неполучение ипа $realm_db = new DBLayer($hostr, $userr, $passwordr, $dbr); $realm_db->query("SET NAMES $database_encoding"); if ($_POST['flags'] == 1){$tbc = "8";} else {$tbc = "0";} $uniqueuser = $realm_db->query("SELECT `login` FROM `accounts` WHERE `login` = '$username'"); $logincheck = mysql_num_rows($uniqueuser); $ip_cr=0; if ($lock_reg!=0){ $query = $realm_db->query("SELECT `lastip` FROM `accounts` WHERE `lastip`='$ip'"); while($result = $realm_db->fetch_assoc($query)) $ip_cr++; } if (($ip_cr>=$lock_reg) && ($lock_reg!=0)) { $cont=' '.$text["ip_limit"][0].$ip.'
'.$ip_cr.$text["ip_limit"][1].'




'; } elseif ($logincheck > 0) { $cont=' '.$text["name"].'
'.$username.'
'.$text["taken"].'




'; } else { if($realm_db->query("INSERT INTO `accounts` (`login`,`password`,`email`,`lastip`,`gm`,`banned`,`flags`) VALUES ('$username','$passw','$email','$ip','0','0','$tbc')")) { $cont=' '.$text["acc"].'
'.$username.'
'.$text["create"].'




'; } else { $cont=' '.$text["acc"].'
'.$username.'
'.$text["failed"].'




'; } } $realm_db->close(); unset($realm_db); } function make_players_array(){ global $host, $user, $password, $db, $database_encoding, $pl_array; $i=0; $mangos_db = new DBLayer($host, $user, $password, $db); $mangos_db->query("SET NAMES $database_encoding"); $query = $mangos_db->query("SELECT * FROM `characters` WHERE `online`='1' ORDER BY `name`"); while($result = $mangos_db->fetch_assoc($query)) { $char_data = ($result['level']); $char_gender = ($result['gender']); $res_pos=get_zone_name($result['mapId'], $result['positionX'], $result['positionY']); $pl_array[$i] = Array($result['name'], $result['race'], $result['class'], $char_data, $res_pos, $char_gender); $i++; } $mangos_db->close(); unset($mangos_db); return $i; } $onlineplayers=make_players_array(); if (!$sort = &$_GET['s']) $sort=0; if (!$flag = &$_GET['f']) $flag=0; if ($flag==0) { $flag=1; $sort_type='<'; } else { $flag=0; $sort_type='>'; } $link=$_SERVER['PHP_SELF']."?f=".$flag."&s="; if (!empty($pl_array)) { usort($pl_array, create_function('$a, $b', 'if ( $a['.$sort.'] == $b['.$sort.'] ) return 0; if ( $a['.$sort.'] '.$sort_type.' $b['.$sort.'] ) return -1; return 1;')); } $list=""; $i=0; while ($i < $onlineplayers) { $name=$pl_array[$i][0]; $race=$pl_array[$i][1]; $class=$pl_array[$i][2]; $res_race = $def['character_race'][$race]; $res_class = $def['character_class'][$class]; $lvl=$pl_array[$i][3]; $loc=$pl_array[$i][4]; $gender=$pl_array[$i][5]; $list.= " $name $res_race $res_class $lvl $loc "; $i++; } if (test_realm()) { $title.=(' ('.$onlineplayers.' '.$text["playerson"].')'); } else { $title.=(' '.$text["off"]); } // Main part !!! ?> <?php print $title ?>

'.$text['char'][0] ?> '.$text['char'][1] ?> '.$text['char'][2] ?> '.$text['char'][3] ?> '.$text['char'][4] ?>