Esempio n. 1
0
function isKnownUser($username, $userpass = null)
{
    global $db, $CNF;
    //    echo $username;
    if (strlen($username) > 0) {
        $db = new DBLayer($CNF["db_host"], $CNF["db_user"], $CNF["db_pass"], $CNF["db_name"]);
        $db->query("SET NAMES utf8");
        $sql_pass = $userpass != null ? "`status_id` !=4 AND `pass`='{$userpass}'" : '`status_id` !=4';
        $query = $db->query("SELECT `uid`,`login`,`lastname`,`firstname`,`middlename` FROM users WHERE `login`='{$username}' AND {$sql_pass}");
        if ($db->num_rows($query) > 0) {
            $auth = $db->fetch_assoc($query);
            return $auth;
        }
    }
    return false;
}
Esempio n. 2
0
        $arr[$i]['cl'] = $result['class'];
        $arr[$i]['race'] = $result['race'];
        $arr[$i]['level'] = $char_data[$UNIT_FIELD_LEVEL];
        $arr[$i]['gender'] = $char_gender[3];
        $arr[$i]['Extention'] = $Extention;
        $arr[$i]['leaderGuid'] = isset($groups[$char_data[0]]) ? $groups[$char_data[0]] : 0;
        $i++;
    }
    $mangos_db->close();
    usort($arr, "sort_players");
    $arr = array_merge($Count, $arr);
    $res['online'] = $arr;
} else {
    $res['online'] = NULL;
}
if ($show_status) {
    $mangos_db = new DBLayer($mangos[$royaume]['host'], $mangos[$royaume]['user'], $mangos[$royaume]['password'], $mangos[$royaume]['db']);
    $mangos_db->query("SET NAMES " . $mangos[$royaume]['encoding'] . "");
    $query = $mangos_db->query("SELECT `starttime`,`maxplayers` FROM `uptime` WHERE `starttime`=(SELECT MAX(`starttime`) FROM `uptime`)");
    if ($result = $mangos_db->fetch_assoc($query)) {
        $status['uptime'] = time() - $result['starttime'];
        $status['maxplayers'] = $result['maxplayers'];
        $status['online'] = test_realm() ? 1 : 0;
    }
    $mangos_db->close();
} else {
    $status = NULL;
}
unset($mangos_db);
$res['status'] = $status;
$_RESULT = $res;
Esempio n. 3
0
    $lang = $language;
}
$database_encoding = $site_encoding;
$server = $server_arr[$realm_id]["addr"];
$port = $server_arr[$realm_id]["game_port"];
$host = $characters_db[$realm_id]["addr"];
$user = $characters_db[$realm_id]["user"];
$password = $characters_db[$realm_id]["pass"];
$db = $characters_db[$realm_id]["name"];
$hostr = $realm_db["addr"];
$userr = $realm_db["user"];
$passwordr = $realm_db["pass"];
$dbr = $realm_db["name"];
$sql = new DBLayer($hostr, $userr, $passwordr, $dbr);
$query = $sql->query("SELECT name FROM realmlist WHERE id = " . $realm_id);
$realm_name = $sql->fetch_assoc($query);
$realm_name = htmlentities($realm_name["name"]);
$gm_show_online = $gm_online;
$gm_show_online_only_gmoff = $map_gm_show_online_only_gmoff;
$gm_show_online_only_gmvisible = $map_gm_show_online_only_gmvisible;
$gm_add_suffix = $map_gm_add_suffix;
$gm_include_online = $gm_online_count;
$show_status = $map_show_status;
$time_to_show_uptime = $map_time_to_show_uptime;
$time_to_show_maxonline = $map_time_to_show_maxonline;
$time_to_show_gmonline = $map_time_to_show_gmonline;
$status_gm_include_all = $map_status_gm_include_all;
$time = $map_time;
$show_time = $map_show_time;
// points located on these maps(do not modify it)
$maps_for_points = "0,1,530,571,609";
$query = $logon_db_PM->query("SELECT GROUP_CONCAT(`acct` SEPARATOR ' ') FROM `accounts` WHERE `gm`<>'0'");
if ($query) {
    if ($result = $logon_db_PM->fetch_row($query)) {
        $gm_accounts = explode(' ', $result[0]);
    }
}
$groups = array();
$characters_db_PM = new DBLayer($host, $user, $password, $db);
if (!$characters_db_PM->isValid()) {
    $_RESULT['status']['online'] = 2;
    exit;
}
$characters_db_PM->query("SET NAMES {$database_encoding}");
$query = $characters_db_PM->query("SELECT `leaderGuid`,`memberGuid` FROM `group_member` WHERE `memberGuid` IN(SELECT `guid` FROM `characters` WHERE `online`='1')");
if ($query) {
    while ($result = $characters_db_PM->fetch_assoc($query)) {
        $groups[$result['memberGuid']] = $result['leaderGuid'];
    }
}
$Count = array();
for ($i = 0; $i < $maps_count; $i++) {
    $Count[$i] = array(0, 0);
}
$arr = array();
$i = $maps_count;
$query = $characters_db_PM->query("SELECT `acct`,`data`,`name`,`class`,`race`, `level`, `gender`, `positionx`,`positiony`,`mapid`,`zoneid`,`player_flags` FROM `characters` WHERE `online`={$map_show_online} ORDER BY `name`");
while ($result = $characters_db_PM->fetch_assoc($query)) {
    if ($result['mapid'] == 530 && $result['positiony'] > -1000 || in_array($result['mapid'], $outland_inst)) {
        $Extention = 1;
    } else {
        if ($result['mapid'] == 571 || in_array($result['mapid'], $northrend_inst)) {
Esempio n. 5
0
         break;
     default:
         error(sprintf($lang_install['No such database type'], forum_htmlencode($db_type)));
 }
 // Create the database object (and connect/select db)
 $forum_db = new DBLayer($db_host, $db_username, $db_password, $db_name, $db_prefix, false);
 // If MySQL, make sure it's at least 4.1.2
 if (in_array($db_type, array('mysql', 'mysqli', 'mysql_innodb', 'mysqli_innodb'))) {
     $mysql_info = $forum_db->get_version();
     if (version_compare($mysql_info['version'], MIN_MYSQL_VERSION, '<')) {
         error(sprintf($lang_install['Invalid MySQL version'], forum_htmlencode($mysql_info['version']), MIN_MYSQL_VERSION));
     }
     // Check InnoDB support in DB
     if (in_array($db_type, array('mysql_innodb', 'mysqli_innodb'))) {
         $result = $forum_db->query('SHOW VARIABLES LIKE \'have_innodb\'');
         $row = $forum_db->fetch_assoc($result);
         if (!$row || !isset($row['Value']) || strtolower($row['Value']) != 'yes') {
             error($lang_install['MySQL InnoDB Not Supported']);
         }
     }
 }
 // Validate prefix
 if (strlen($db_prefix) > 0 && (!preg_match('/^[a-zA-Z_][a-zA-Z0-9_]*$/', $db_prefix) || strlen($db_prefix) > 40)) {
     error(sprintf($lang_install['Invalid table prefix'], $db_prefix));
 }
 // Check SQLite prefix collision
 if (in_array($db_type, array('sqlite', 'sqlite3')) && strtolower($db_prefix) == 'sqlite_') {
     error($lang_install['SQLite prefix collision']);
 }
 // Make sure PunBB isn't already installed
 if ($forum_db->table_exists('users')) {
Esempio n. 6
0
 function get_character_honor($char_id)
 {
     global $hostr, $userr, $passwordr, $db, $dbr, $dbc, $database_encoding;
     $mangos_db = new DBLayer($hostr, $userr, $passwordr, $dbc);
     $query = $mangos_db->query("SELECT * FROM `character_kill` WHERE `guid`='{$char_id}'");
     while ($res_row = $mangos_db->fetch_assoc($query)) {
         $honor += $res_row['honor'];
     }
     $mangos_db->close();
     return $honor;
 }
Esempio n. 7
0
<?php

require "subs.php";
require_once "conf.inc.php";
require_once "lib/dblayer.php";
$btn_home = "<a class='button' href='./'><<</a>";
$db = new DBLayer($CNF["db_host"], $CNF["db_user"], $CNF["db_pass"], $CNF["db_name"]);
$db->query("SET NAMES utf8");
$q = "SELECT\n                u.`uid`,\n                u.`modiff`,\n                DATE_FORMAT(u.`modiff`,'%d.%m.%Y %H:%i:%s') AS `modiff_fmt`,\n                (SELECT CONCAT(`lastname`,' ',`firstname`) FROM users WHERE `uid`=u.`modiff_uid`) AS `modiff_uid`,\n                u.`status_id`,\n                u.`lastname`,\n                u.`firstname`,\n                u.`middlename`,\n                u.`login`,\n                u.`pass`\n                         FROM users AS u ORDER BY `uid` DESC LIMIT 5";
if ($qry = $db->query($q)) {
    eval(tmplt_gen("stat/forms/begin.form"));
    eval(tmplt_gen("users/forms/filter.form"));
    while ($res = $db->fetch_assoc($qry)) {
        $page .= table_users($res);
    }
    $page .= "</table>";
    $page .= "<div class='table-footer'><span class='statusbar'>&nbsp;</span>";
} else {
    echo 'error';
}
//print_r($res);
echo $page;
$db_err = $db->error();
$db->close();
if ($db_err["error_no"] != null) {
    print_r($db_err);
}
// DB-errors
Esempio n. 8
0
require "lib/dblayer.php";
$stage = isset($_REQUEST["stage"]) ? check_string($_REQUEST["stage"], "string") : null;
// Стадия
// Авторизация
global $CNF;
//echo $stage;
if ($stage == "auth") {
    $db = new DBLayer($CNF["db_host"], $CNF["db_user"], $CNF["db_pass"], $CNF["db_name"]);
    $db->query("SET NAMES utf8");
    $login = check_string($_REQUEST["login"], "string");
    $pass_hash = md5($_REQUEST["pass"]);
    //    echo    "SELECT `uid` FROM users WHERE `login`='$login' AND `pass_hash`='$pass_hash'";
    $query_auth = $db->query("SELECT `uid` FROM users WHERE `login`='{$login}' AND `pass_hash`='{$pass_hash}'");
    $db->num_rows($query_auth);
    if ($query_auth and $db->num_rows($query_auth) == 1) {
        $admin_login = $db->fetch_assoc($query_auth);
        //        $hash = md5(microtime()); // Случайная строка-хеш (32-символа)
        //        $db -> query("UPDATE admins SET `hash`='".$hash."' WHERE `uid`='".$admin_login['uid']."'"); // Запись хеша в БД
        # Печеньки:
        $cookie_lifetime = isset($_REQUEST["remember"]) == "on" ? strtotime("+1 year") : 0;
        // Время жизни: 1 год или 0 - до закрытия броузера
        setcookie("user_id", $admin_login['uid'], $cookie_lifetime);
        setcookie("hash", $pass_hash, $cookie_lifetime);
        unset($stage, $_POST["name"], $_POST["pass"], $_REQUEST["stage"]);
        header("Location: http://" . $_SERVER["HTTP_HOST"] . "/" . check_string($_SESSION["ref"], "string"));
    } else {
        $msg = "<div class='msg error'>Неверный логин или пароль</div>";
        include "stat/forms/login.form";
    }
    $db_err = $db->error();
    $db->close();
Esempio n. 9
0
        //DBlayers switched table, so $db must be re-introduced
        $db = new DBLayer($db_host, $db_username, $db_password, $db_name, $db_prefix, false);
        while ($row = $imp->fetch_assoc($cat_query)) {
            $query = array('INSERT' => 'title, description, active, father_id, old_id, old_id_backup', 'INTO' => 'categories', 'VALUES' => '"' . $row['title'] . '", "' . $row['description'] . '", 1, "' . $row['ref'] . '", "' . $row['id'] . '", "' . $row['id'] . '"');
            $db->query_build($query) or error(__FILE__, __LINE__);
        }
        while ($lrow = $imp->fetch_assoc($link_query)) {
            $query = array('SELECT' => 'id', 'FROM' => 'categories', 'WHERE' => 'old_id=' . $lrow['ref']);
            $new_cat_id = $db->query_build($query) or error(__FILE__, __LINE__);
            $new_cat_id = $db->fetch_row($new_cat_id);
            $query = array('INSERT' => 'title, url, description, active, category_id, ip, type, payment_status, old_category_id_backup', 'INTO' => 'links', 'VALUES' => '"' . $lrow['title'] . '", "' . $lrow['url'] . '", "' . $lrow['description'] . '", ' . ($lrow['accepted'] == 'y' ? 1 : 0) . ', ' . $new_cat_id[0] . ',  "' . $lrow['ip'] . '", "a", "ok", ' . $lrow['category']);
            $db->query_build($query) or error(__FILE__, __LINE__);
        }
        //re-sort father_ids
        $query = array('UPDATE' => 'categories', 'SET' => 'father_id=' . intval($_POST['category_id']), 'WHERE' => 'father_id=0 AND old_id<>0');
        $db->query_build($query) or error(__FILE__, __LINE__);
        $query = array('SELECT' => 'id, father_id, old_id', 'FROM' => 'categories', 'WHERE' => 'father_id <> ' . intval($_POST['category_id']) . ' AND old_id<>0 ORDER BY father_id ASC');
        $sql_resort = $db->query_build($query) or error(__FILE__, __LINE__);
        while ($res = $db->fetch_assoc($sql_resort)) {
            $query = array('SELECT' => 'id', 'FROM' => 'categories', 'WHERE' => 'old_id=' . $res['father_id']);
            $get_id = $db->query_build($query) or error(__FILE__, __LINE__);
            $get_id = $db->fetch_row($get_id);
            $query = array('UPDATE' => 'categories', 'SET' => 'father_id=' . intval($get_id[0]), 'WHERE' => 'id=' . $res['id']);
            $db->query_build($query) or error(__FILE__, __LINE__);
        }
        $imp_result = "Links and categories have now been imported from Free PHP Directory Script";
    } else {
        $imp_result = "Script '" . $_POST['directory_script'] . "' is not supported";
    }
    $db->drop_field('categories', 'old_id');
}