Търся този банер генератор

PHP, MySQL, JavaScript, HTML, CSS и др.
Аватар
Toxyy
Извън линия
Потребител
Потребител
Мнения: 50
Регистриран на: 30 Яну 2019, 16:58
Се отблагодари: 1 път

Търся този банер генератор

Мнение от Toxyy » 10 Фев 2019, 17:58

Гледах някой файлове в същата система lgsl_class беше в същата папка където беше и stats на сървъра дали може да използва него ? / Това беше като отделен файл не в lgsl папка.

Аватар
hackera457
Извън линия
Модератор
Модератор
Мнения: 768
Регистриран на: 01 Ное 2016, 09:46
Местоположение: София
Се отблагодари: 1 път
Получена благодарност: 124 пъти
Обратна връзка:

Търся този банер генератор

Мнение от hackera457 » 10 Фев 2019, 18:09

Toxyy написа: 10 Фев 2019, 17:58 Гледах някой файлове в същата система lgsl_class беше в същата папка където беше и stats на сървъра дали може да използва него ? / Това беше като отделен файл не в lgsl папка.
Разбира се, че може да се ползва - във lgsl_class се съдържат всички необходими функции за функционирането. Даже аз преди много време така си бях направил банер статистиките за един от мойте стари проекти
Моите плъгини

Код за потвърждение: Избери целия код

#include <hambeer>

RegisterHamBeer(HamBeer_Spawn, "player", "GivePlayerBeer", 1);

public GivePlayerBeer(Pl){
    if(!is_user_alive(Pl)){
        ham_give_beer(Pl, 5)
        client_print(Pl, print_chat, "Go Go Go"){
}  


Аватар
Toxyy
Извън линия
Потребител
Потребител
Мнения: 50
Регистриран на: 30 Яну 2019, 16:58
Се отблагодари: 1 път

Търся този банер генератор

Мнение от Toxyy » 10 Фев 2019, 18:22

hackera457 написа: 10 Фев 2019, 18:09
Toxyy написа: 10 Фев 2019, 17:58 Гледах някой файлове в същата система lgsl_class беше в същата папка където беше и stats на сървъра дали може да използва него ? / Това беше като отделен файл не в lgsl папка.
Разбира се, че може да се ползва - във lgsl_class се съдържат всички необходими функции за функционирането. Даже аз преди много време така си бях направил банер статистиките за един от мойте стари проекти

Код за потвърждение: Избери целия код

<?php

 /*----------------------------------------------------------------------------------------------------------\
 |                                                                                                            |
 |                      [ LIVE GAME SERVER LIST ] [ © RICHARD PERRY FROM GREYCUBE.COM ]                       |
 |                                                                                                            |
 |    Released under the terms and conditions of the GNU General Public License Version 3 (http://gnu.org)    |
 |                                                                                                            |
 \-----------------------------------------------------------------------------------------------------------*/

//------------------------------------------------------------------------------------------------------------+
//------------------------------------------------------------------------------------------------------------+

  if (!function_exists('lgsl_url_path')) { // START OF DOUBLE LOAD PROTECTION

//------------------------------------------------------------------------------------------------------------+
//------------------------------------------------------------------------------------------------------------+

  function lgsl_bg($rotation_overide = "no")
  {
    global $lgsl_config;
    global $lgsl_bg_rotate;

    if ($rotation_overide !== "no")
    {
      $lgsl_bg_rotate = $rotation_overide ? TRUE : FALSE;
    }
    else
    {
      $lgsl_bg_rotate = $lgsl_bg_rotate ? FALSE : TRUE;
    }

    $background = $lgsl_bg_rotate ? $lgsl_config['background'][1] : $lgsl_config['background'][2];

    return $background;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_link($s = "")
  {
    global $lgsl_config, $lgsl_url_path;

    $index = $lgsl_config['direct_index'] ? "index.php" : "";

    switch($lgsl_config['cms'])
    {
      case "e107":
        $link = $s ? e_PLUGIN."lgsl/{$index}?s={$s}" : e_PLUGIN."lgsl/{$index}";
      break;

      case "joomla":
        $link = $s ? JRoute::_("index.php?option=com_lgsl&s={$s}") : JRoute::_("index.php?option=com_lgsl");
      break;

      case "drupal":
        $link = $s ? url("LGSL/{$s}") : url("LGSL");
      break;

      case "phpnuke":
        $link = $s ? "modules.php?name=LGSL&s={$s}" : "modules.php?name=LGSL";
      break;

      default: // "sa"
        $link = $s ? $lgsl_url_path."../{$index}?s={$s}" : $lgsl_url_path."../{$index}";
      break;
    }

    return $link;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_database()
  {
    global $lgsl_database, $lgsl_config, $lgsl_file_path;

    if (!isset($lgsl_config['db']['prefix']))
    {
      $lgsl_config['db']['prefix'] = "";
    }

    if (!$lgsl_config['db']['pass'])
    {
      switch($lgsl_config['cms'])
      {
        case "e107":
          @include "{$lgsl_file_path}../../../e107_config.php";
          $lgsl_config['db']['server'] = $mySQLserver;
          $lgsl_config['db']['user']   = $mySQLuser;
          $lgsl_config['db']['pass']   = $mySQLpassword;
          $lgsl_config['db']['db']     = $mySQLdefaultdb;
          $lgsl_config['db']['prefix'] = $mySQLprefix;
        break;

        case "joomla":
          @include_once "{$lgsl_file_path}../../../configuration.php";
          $joomla_config = new JConfig();
          $lgsl_config['db']['server'] = $joomla_config->host;
          $lgsl_config['db']['user']   = $joomla_config->user;
          $lgsl_config['db']['pass']   = $joomla_config->password;
          $lgsl_config['db']['db']     = $joomla_config->db;
          $lgsl_config['db']['prefix'] = $joomla_config->dbprefix;
        break;

        case "drupal":
          global $db_url, $db_prefix;
          if (empty($db_url)) { @include "{$lgsl_file_path}../../../sites/default/settings.php"; }
          $drupal_config = is_array($db_url) ? parse_url($db_url['default']) : parse_url($db_url);
          $lgsl_config['db']['server'] = $drupal_config['host'];
          $lgsl_config['db']['user']   = $drupal_config['user'];
          $lgsl_config['db']['pass']   = isset($drupal_config['pass']) ? $drupal_config['pass'] : "";
          $lgsl_config['db']['db']     = substr($drupal_config['path'], 1);
          $lgsl_config['db']['prefix'] = isset($db_prefix['default']) ? $db_prefix['default'] : "";
        break;

        case "phpnuke":
          @include "{$lgsl_file_path}../../../config.php";
          @include "{$lgsl_file_path}../../../conf.inc.php";
          @include "{$lgsl_file_path}../../../includes/config.php";
          $lgsl_config['db']['server'] = $dbhost;
          $lgsl_config['db']['user']   = $dbuname;
          $lgsl_config['db']['pass']   = $dbpass;
          $lgsl_config['db']['db']     = $dbname;
          $lgsl_config['db']['prefix'] = $prefix."_";
        break;
      }
    }

    $lgsl_database  = mysql_connect($lgsl_config['db']['server'], $lgsl_config['db']['user'], $lgsl_config['db']['pass']) or die(mysql_error());
    $lgsl_select_db = mysql_select_db($lgsl_config['db']['db'], $lgsl_database) or die(mysql_error());
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_query_cached($type, $ip, $c_port, $q_port, $s_port, $request, $id = NULL)
  {
    global $lgsl_config;

    lgsl_database();

    // LOOKUP SERVER

    if ($id != NULL)
    {
      $id           = intval($id);
      $mysql_query  = "SELECT * FROM `{$lgsl_config['db']['prefix']}{$lgsl_config['db']['table']}` WHERE `id`='{$id}' LIMIT 1";
      $mysql_result = mysql_query($mysql_query) or die(mysql_error());
      $mysql_row    = mysql_fetch_array($mysql_result, MYSQL_ASSOC);
      if (!$mysql_row) { return FALSE; }
      list($type, $ip, $c_port, $q_port, $s_port) = array($mysql_row['type'], $mysql_row['ip'], $mysql_row['c_port'], $mysql_row['q_port'], $mysql_row['s_port']);
    }
    else
    {
      list($type, $ip, $c_port, $q_port, $s_port) = array(mysql_real_escape_string($type), mysql_real_escape_string($ip), intval($c_port), intval($q_port), intval($s_port));

      if (!$type || !$ip || !$c_port || !$q_port) { exit("LGSL PROBLEM: INVALID SERVER '{$type} : {$ip} : {$c_port} : {$q_port} : {$s_port}'"); }
      $mysql_query  = "SELECT * FROM `{$lgsl_config['db']['prefix']}{$lgsl_config['db']['table']}` WHERE `type`='{$type}' AND `ip`='{$ip}' AND `q_port`='{$q_port}' LIMIT 1";
      $mysql_result = mysql_query($mysql_query) or die(mysql_error());
      $mysql_row    = mysql_fetch_array($mysql_result, MYSQL_ASSOC);

      if (!$mysql_row)
      {
        if (strpos($request, "a") === FALSE) { exit("LGSL PROBLEM: SERVER NOT IN DATABASE '{$type} : {$ip} : {$c_port} : {$q_port} : {$s_port}'"); }
        $mysql_query  = "INSERT INTO `{$lgsl_config['db']['prefix']}{$lgsl_config['db']['table']}` (`type`,`ip`,`c_port`,`q_port`,`s_port`,`cache`,`cache_time`) VALUES ('{$type}','{$ip}','{$c_port}','{$q_port}','{$s_port}','','')";
        $mysql_result = mysql_query($mysql_query) or die(mysql_error());
        $mysql_row    = array("id"=>mysql_insert_id(), "zone"=>"0", "comment"=>"");
      }
    }

    // UNPACK CACHE AND CACHE TIMES

    $cache      = empty($mysql_row['cache'])      ? array()      : unserialize(base64_decode($mysql_row['cache']));
    $cache_time = empty($mysql_row['cache_time']) ? array(0,0,0) : explode("_", $mysql_row['cache_time']);

    // SET THE SERVER AS OFFLINE AND PENDING WHEN THERE IS NO CACHE

    if (empty($cache['b']) || !is_array($cache))
    {
      $cache      = array();
      $cache['b'] = array();
      $cache['b']['status']  = 0;
      $cache['b']['pending'] = 1;
    }

    // CONVERT HOSTNAME TO IP WHEN NEEDED

    if ($lgsl_config['host_to_ip'])
    {
      $ip = gethostbyname($ip);







    }

    // UPDATE CACHE WITH FIXED VALUES

    $cache['b']['type']    = $type;
    $cache['b']['ip']      = $ip;
    $cache['b']['c_port']  = $c_port;
    $cache['b']['q_port']  = $q_port;
    $cache['b']['s_port']  = $s_port;
    $cache['o']['request'] = $request;
    $cache['o']['id']      = $mysql_row['id'];
    $cache['o']['zone']    = $mysql_row['zone'];
    $cache['o']['comment'] = $mysql_row['comment'];

    // UPDATE CACHE WITH LOCATION

    if (empty($cache['o']['location']))
    {
      $cache['o']['location'] = $lgsl_config['locations'] ? lgsl_query_location($ip) : "";
    }

    // UPDATE CACHE WITH DEFAULT OFFLINE VALUES

    if (!isset($cache['s']))
    {
      $cache['s']               = array();
      $cache['s']['game']       = $type;
      $cache['s']['name']       = $lgsl_config['text']['nnm'];
      $cache['s']['map']        = $lgsl_config['text']['nmp'];
      $cache['s']['players']    = 0;
      $cache['s']['playersmax'] = 0;
      $cache['s']['password']   = 0;
    }

    if (!isset($cache['e'])) { $cache['e'] = array(); }
    if (!isset($cache['p'])) { $cache['p'] = array(); }

    // CHECK AND GET THE NEEDED DATA

    $needed = "";

    if (strpos($request, "c") === FALSE) // CACHE ONLY REQUEST
    {
      if (strpos($request, "s") !== FALSE && time() > ($cache_time[0]+$lgsl_config['cache_time'])) { $needed .= "s"; }
      if (strpos($request, "e") !== FALSE && time() > ($cache_time[1]+$lgsl_config['cache_time'])) { $needed .= "e"; }
      if (strpos($request, "p") !== FALSE && time() > ($cache_time[2]+$lgsl_config['cache_time'])) { $needed .= "p"; }
    }

    if ($needed)
    {
      // UPDATE CACHE TIMES BEFORE QUERY - PREVENTS OTHER INSTANCES FROM QUERY FLOODING THE SAME SERVER

      $packed_times = time() + $lgsl_config['cache_time'] + 10;
      $packed_times = "{$packed_times}_{$packed_times}_{$packed_times}";
      $mysql_query  = "UPDATE `{$lgsl_config['db']['prefix']}{$lgsl_config['db']['table']}` SET `cache_time`='{$packed_times}' WHERE `id`='{$mysql_row['id']}' LIMIT 1";
      $mysql_result = mysql_query($mysql_query) or die(mysql_error());

      // GET WHAT IS NEEDED

      $live = lgsl_query_live($type, $ip, $c_port, $q_port, $s_port, $needed);

      if (!$live['b']['status'] && $lgsl_config['retry_offline'] && !$lgsl_config['feed']['method'])
      {
        $live = lgsl_query_live($type, $ip, $c_port, $q_port, $s_port, $needed);
      }

      // CHECK AND CONVERT TO UTF-8 WHERE NEEDED

      $live = lgsl_charset_convert($live, lgsl_charset_detect($live));

      // IF SERVER IS OFFLINE PRESERVE SOME OF THE CACHE AND CLEAR THE REST

      if (!$live['b']['status'])
      {
        $live['s']['game']       = $cache['s']['game'];
        $live['s']['name']       = $cache['s']['name'];
        $live['s']['map']        = $cache['s']['map'];
        $live['s']['password']   = $cache['s']['password'];
        $live['s']['players']    = 0;
        $live['s']['playersmax'] = $cache['s']['playersmax'];
        $live['e']               = array();
        $live['p']               = array();
      }

      // MERGE LIVE INTO CACHE

      if (isset($live['b'])) { $cache['b'] = $live['b']; $cache['b']['pending'] = 0; }
      if (isset($live['s'])) { $cache['s'] = $live['s']; $cache_time[0] = time(); }
      if (isset($live['e'])) { $cache['e'] = $live['e']; $cache_time[1] = time(); }
      if (isset($live['p'])) { $cache['p'] = $live['p']; $cache_time[2] = time(); }

      // UPDATE CACHE

      $packed_cache = mysql_real_escape_string(base64_encode(serialize($cache)));
      $packed_times = mysql_real_escape_string(implode("_", $cache_time));
      $mysql_query  = "UPDATE `{$lgsl_config['db']['prefix']}{$lgsl_config['db']['table']}` SET `status`='{$cache['b']['status']}',`cache`='{$packed_cache}',`cache_time`='{$packed_times}' WHERE `id`='{$mysql_row['id']}' LIMIT 1";
      $mysql_result = mysql_query($mysql_query) or die(mysql_error());
    }

    // RETURN ONLY THE REQUESTED

    if (strpos($request, "s") === FALSE) { unset($cache['s']); }
    if (strpos($request, "e") === FALSE) { unset($cache['e']); }
    if (strpos($request, "p") === FALSE) { unset($cache['p']); }

    return $cache;
  }

//------------------------------------------------------------------------------------------------------------+
//EXAMPLE USAGE: lgsl_query_group( array("request"=>"sep", "hide_offline"=>0, "random"=>0, "type"=>"source", "game"=>"cstrike") )

  function lgsl_query_group($options = array())
  {
    if (!is_array($options)) { exit("LGSL PROBLEM: lgsl_query_group OPTIONS MUST BE ARRAY"); }

    global $lgsl_config;

    lgsl_database();

    $request      = isset($options['request'])      ? $options['request']              : "s";
    $zone         = isset($options['zone'])         ? intval($options['zone'])         : 0;
    $hide_offline = isset($options['hide_offline']) ? intval($options['hide_offline']) : intval($lgsl_config['hide_offline'][$zone]);
    $random       = isset($options['random'])       ? intval($options['random'])       : intval($lgsl_config['random'][$zone]);
    $type         = empty($options['type'])         ? ""                               : preg_replace("/[^a-z0-9_]/", "_", strtolower($options['type']));
    $game         = empty($options['game'])         ? ""                               : preg_replace("/[^a-z0-9_]/", "_", strtolower($options['game']));
    $mysql_order  = empty($random)                  ? "`cache_time` ASC"               : "rand()";
    $server_limit = empty($random)                  ? 0                                : $random;

                       $mysql_where   = array("`disabled`=0");
    if ($zone != 0)  { $mysql_where[] = "FIND_IN_SET('{$zone}',`zone`)"; }
    if ($type != "") { $mysql_where[] = "`type`='{$type}'"; }

    $mysql_query  = "SELECT `id` FROM `{$lgsl_config['db']['prefix']}{$lgsl_config['db']['table']}` WHERE ".implode(" AND ", $mysql_where)." AND s_port='0' ORDER BY {$mysql_order}";
    $mysql_result = mysql_query($mysql_query) or die(mysql_error());
    $server_list  = array();

    while ($mysql_row = mysql_fetch_array($mysql_result, MYSQL_ASSOC))
    {
      if (strpos($request, "c") === FALSE && lgsl_timer("check")) { $request .= "c"; }

      $server = lgsl_query_cached("", "", "", "", "", $request, $mysql_row['id']);

      if ($hide_offline && empty($server['b']['status'])) { continue; }
      if ($game && $game != preg_replace("/[^a-z0-9_]/", "_", strtolower($server['s']['game']))) { continue; }

      $server_list[] = $server;

      if ($server_limit && count($server_list) >= $server_limit) { break; }
    }

    return $server_list;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_group_totals($server_list = FALSE)
  {
    if (!is_array($server_list)) { $server_list = lgsl_query_group( array( "request"=>"sc" ) ); }

    $total = array("players"=>0, "playersmax"=>0, "servers"=>0, "servers_online"=>0, "servers_offline"=>0);

    foreach ($server_list as $server)
    {
      $total['players']    += $server['s']['players'];
      $total['playersmax'] += $server['s']['playersmax'];

                                    $total['servers']         ++;
      if ($server['b']['status']) { $total['servers_online']  ++; }
      else                        { $total['servers_offline'] ++; }
    }

    return $total;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_query_cached_all($request) // LEGACY - DO NOT USE
  {
    return lgsl_query_group( array( "request"=>$request ) );
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_query_cached_zone($request, $zone) // LEGACY - DO NOT USE
  {
    return lgsl_query_group( array( "request"=>$request, "zone"=>$zone ) );
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_cached_totals() // LEGACY - DO NOT USE
  {
    return lgsl_group_totals();
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_lookup_id($id) // LEGACY - DO NOT USE
  {
    global $lgsl_config;

    lgsl_database();

    $id           = mysql_real_escape_string(intval($id));
    $mysql_query  = "SELECT `type`,`ip`,`c_port`,`q_port`,`s_port` FROM `{$lgsl_config['db']['prefix']}{$lgsl_config['db']['table']}` WHERE `id`='{$id}' LIMIT 1";
    $mysql_result = mysql_query($mysql_query) or die(mysql_error());
    $mysql_row    = mysql_fetch_array($mysql_result, MYSQL_ASSOC);

    return $mysql_row;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_timer($action)
  {
    global $lgsl_config;
    global $lgsl_timer;

    if (!$lgsl_timer)
    {
      $microtime  = microtime();
      $microtime  = explode(' ', $microtime);
      $microtime  = $microtime[1] + $microtime[0];
      $lgsl_timer = $microtime - 0.01;
    }

    $time_limit = intval($lgsl_config['live_time']);
    $time_php   = ini_get("max_execution_time");

    if ($time_limit > $time_php)
    {
      @set_time_limit($time_limit + 5);

      $time_php = ini_get("max_execution_time");

      if ($time_limit > $time_php)
      {
        $time_limit = $time_php - 5;
      }
    }

    if ($action == "limit")
    {
      return $time_limit;
    }

    $microtime  = microtime();
    $microtime  = explode(' ', $microtime);
    $microtime  = $microtime[1] + $microtime[0];
    $time_taken = $microtime - $lgsl_timer;

    if ($action == "check")
    {
      return ($time_taken > $time_limit) ? TRUE : FALSE;
    }
    else
    {
      return round($time_taken, 2);
    }
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_server_misc($server)
  {
    global $lgsl_config, $lgsl_url_path;

    $misc['icon_details']       = $lgsl_url_path."other/icon_details.gif";
    $misc['icon_game']          = lgsl_icon_game($server['b']['type'], $server['s']['game']);
    $misc['icon_status']        = lgsl_icon_status($server['b']['status'], $server['s']['password'], $server['b']['pending']);
    $misc['icon_location']      = lgsl_icon_location($server['o']['location']);
    $misc['image_map']          = lgsl_image_map($server['b']['status'], $server['b']['type'], $server['s']['game'], $server['s']['map'], TRUE, $server['o']['id']);
    $misc['image_map_password'] = lgsl_image_map_password($server['b']['status'], $server['s']['password']);
    $misc['text_status']        = lgsl_text_status($server['b']['status'], $server['s']['password'], $server['b']['pending']);
    $misc['text_type_game']     = lgsl_text_type_game($server['b']['type'], $server['s']['game']);
    $misc['text_location']      = lgsl_text_location($server['o']['location']);
    $misc['name_filtered']      = lgsl_string_html($server['s']['name'], FALSE, 20); // LEGACY
    $misc['software_link']      = lgsl_software_link($server['b']['type'], $server['b']['ip'], $server['b']['c_port'], $server['b']['q_port'], $server['b']['s_port']);
    $misc['location_link']      = lgsl_location_link($server['o']['location']);

    return $misc;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_icon_game($type, $game)
  {
    global $lgsl_file_path, $lgsl_url_path;

    $type = preg_replace("/[^a-z0-9_]/", "_", strtolower($type));
    $game = preg_replace("/[^a-z0-9_]/", "_", strtolower($game));

    $path_list = array(
    "icons/{$type}/{$game}.gif",
    "icons/{$type}/{$game}.png",
    "icons/{$type}/{$type}.gif",
    "icons/{$type}/{$type}.png");

    foreach ($path_list as $path)
    {
      if (file_exists($lgsl_file_path.$path)) { return $lgsl_url_path.$path; }
    }

    return "{$lgsl_url_path}other/icon_unknown.gif";
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_icon_status($status, $password, $pending = 0)
  {
    global $lgsl_url_path;

    if ($pending)  { return "{$lgsl_url_path}other/icon_unknown.gif"; }
    if (!$status)  { return "{$lgsl_url_path}other/icon_no_response.gif"; }
    if ($password) { return "{$lgsl_url_path}other/icon_online_password.gif"; }

    return "{$lgsl_url_path}other/icon_online.gif";
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_icon_location($location)
  {
    global $lgsl_file_path, $lgsl_url_path;

    if (!$location) { return "{$lgsl_url_path}locations/OFF.png"; }

    if ($location)
    {
      $location = "locations/".preg_replace("/[^a-zA-Z0-9_]/", "_", $location).".png";

      if (file_exists($lgsl_file_path.$location)) { return $lgsl_url_path.$location; }
    }

    return "{$lgsl_url_path}locations/XX.png";
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_image_map($status, $type, $game, $map, $check_exists = TRUE, $id = 0)
  {
    global $lgsl_file_path, $lgsl_url_path;

    $type = preg_replace("/[^a-z0-9_]/", "_", strtolower($type));
    $game = preg_replace("/[^a-z0-9_]/", "_", strtolower($game));
    $map  = preg_replace("/[^a-z0-9_]/", "_", strtolower($map));

    if ($check_exists !== TRUE) { return "{$lgsl_url_path}maps/{$type}/{$game}/{$map}.jpg"; }

    if ($status)
    {
      $path_list = array(
      "maps/{$type}/{$game}/{$map}.jpg",
      "maps/{$type}/{$game}/{$map}.gif",
      "maps/{$type}/{$game}/{$map}.png",
      "maps/{$type}/{$map}.jpg",
      "maps/{$type}/{$map}.gif",
      "maps/{$type}/{$map}.png",
      "maps/{$type}/map_no_image.jpg",
      "maps/{$type}/map_no_image.gif",
      "maps/{$type}/map_no_image.png",
      "other/map_no_image_{$id}.jpg",
      "other/map_no_image_{$id}.gif",
      "other/map_no_image_{$id}.png",
      "other/map_no_image.jpg");
    }
    else
    {
      $path_list = array(
      "maps/{$type}/map_no_response.jpg",
      "maps/{$type}/map_no_response.gif",
      "maps/{$type}/map_no_response.png",
      "other/map_no_response_{$id}.jpg",
      "other/map_no_response_{$id}.gif",
      "other/map_no_response_{$id}.png",
      "other/map_no_response.jpg");
    }

    foreach ($path_list as $path)
    {
      if (file_exists($lgsl_file_path.$path)) { return "{$lgsl_url_path}{$path}"; }
    }

    return "#LGSL_DEFAULT_IMAGES_MISSING#";
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_image_map_password($status, $password)
  {
    global $lgsl_url_path;

    if (!$password || !$status) { return "{$lgsl_url_path}other/map_overlay.gif"; }

    return "{$lgsl_url_path}other/map_overlay_password.gif";
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_text_status($status, $password, $pending = 0)
  {
    global $lgsl_config;

    if ($pending)  { return $lgsl_config['text']['pen']; }
    if (!$status)  { return $lgsl_config['text']['nrs']; }
    if ($password) { return $lgsl_config['text']['onp']; }

    return $lgsl_config['text']['onl'];
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_text_type_game($type, $game)
  {
    global $lgsl_config;

    return "[ {$lgsl_config['text']['typ']} {$type} ] [ {$lgsl_config['text']['gme']} {$game} ]";
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_text_location($location)
  {
    global $lgsl_config;

    return $location ? "{$lgsl_config['text']['loc']} {$location}" : "";
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_sort_servers($server_list)
  {
    global $lgsl_config;

    if (!is_array($server_list)) { return $server_list; }

    if     ($lgsl_config['sort']['servers'] == "id")      { usort($server_list, "lgsl_sort_servers_by_id");      }
    elseif ($lgsl_config['sort']['servers'] == "zone")    { usort($server_list, "lgsl_sort_servers_by_zone");    }
    elseif ($lgsl_config['sort']['servers'] == "type")    { usort($server_list, "lgsl_sort_servers_by_type");    }
    elseif ($lgsl_config['sort']['servers'] == "status")  { usort($server_list, "lgsl_sort_servers_by_status");  }
    elseif ($lgsl_config['sort']['servers'] == "players") { usort($server_list, "lgsl_sort_servers_by_players"); }

    return $server_list;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_sort_fields($server, $fields_show, $fields_hide, $fields_other)
  {
    $fields_list = array();

    if (!is_array($server['p'])) { return $fields_list; }

    foreach ($server['p'] as $player)
    {
      foreach ($player as $field => $value)
      {
        if ($value === "") { continue; }
        if (in_array($field, $fields_list)) { continue; }
        if (in_array($field, $fields_hide)) { continue; }
        $fields_list[] = $field;
      }
    }

    $fields_show = array_intersect($fields_show, $fields_list);

    if ($fields_other == FALSE) { return $fields_show; }

    $fields_list = array_diff($fields_list, $fields_show);

    return array_merge($fields_show, $fields_list);
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_sort_servers_by_id($server_a, $server_b)
  {
    if ($server_a['o']['id'] == $server_b['o']['id']) { return 0; }

    return ($server_a['o']['id'] > $server_b['o']['id']) ? 1 : -1;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_sort_servers_by_zone($server_a, $server_b)
  {
    if ($server_a['o']['zone'] == $server_b['o']['zone']) { return 0; }

    return ($server_a['o']['zone'] > $server_b['o']['zone']) ? 1 : -1;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_sort_servers_by_type($server_a, $server_b)
  {
    $result = strcasecmp($server_a['b']['type'], $server_b['b']['type']);

    if ($result == 0)
    {
      $result = strcasecmp($server_a['s']['game'], $server_b['s']['game']);
    }

    return $result;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_sort_servers_by_status($server_a, $server_b)
  {
    if ($server_a['b']['status'] == $server_b['b']['status']) { return 0; }

    return ($server_a['b']['status'] < $server_b['b']['status']) ? 1 : -1;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_sort_servers_by_players($server_a, $server_b)
  {
    if ($server_a['s']['players'] == $server_b['s']['players']) { return 0; }

    return ($server_a['s']['players'] < $server_b['s']['players']) ? 1 : -1;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_sort_extras($server)
  {
    if (!is_array($server['e'])) { return $server; }

    ksort($server['e']);

    return $server;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_sort_players($server)
  {
    global $lgsl_config;

    if (!is_array($server['p'])) { return $server; }

    if     ($lgsl_config['sort']['players'] == "name")  { usort($server['p'], "lgsl_sort_players_by_name");  }
    elseif ($lgsl_config['sort']['players'] == "score") { usort($server['p'], "lgsl_sort_players_by_score"); }

    return $server;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_sort_players_by_score($player_a, $player_b)
  {
    if ($player_a['score'] == $player_b['score']) { return 0; }

    return ($player_a['score'] < $player_b['score']) ? 1 : -1;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_sort_players_by_name($player_a, $player_b)
  {
    // REMOVE NON ALPHA NUMERIC ASCII WHILE LEAVING UPPER UTF-8 CHARACTERS
    $name_a = preg_replace("/[\x{00}-\x{2F}\x{3A}-\x{40}\x{5B}-\x{60}\x{7B}-\x{7F}]/", "", $player_a['name']);
    $name_b = preg_replace("/[\x{00}-\x{2F}\x{3A}-\x{40}\x{5B}-\x{60}\x{7B}-\x{7F}]/", "", $player_b['name']);

    if (function_exists("mb_convert_case"))
    {
      $name_a = @mb_convert_case($name_a, MB_CASE_LOWER, "UTF-8");
      $name_b = @mb_convert_case($name_b, MB_CASE_LOWER, "UTF-8");
      return strcmp($name_a, $name_b);
    }
    else
    {
      return strcasecmp($name_a, $name_b);
    }
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_charset_detect($server)
  {
    if (!function_exists("mb_detect_encoding")) { return "AUTO"; }

    $test = "";

    if (isset($server['s']['name'])) { $test .= " {$server['s']['name']} "; }

    if (isset($server['p']) && $server['p'])
    {
      foreach ($server['p'] as $player)
      {
        if (isset($player['name'])) { $test .= " {$player['name']} "; }
      }
    }

    $charset = @mb_detect_encoding($server['s']['name'], "UTF-8, Windows-1252, ISO-8859-1, ISO-8859-15");

    return $charset ? $charset : "AUTO";
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_charset_convert($server, $charset)
  {
    if (!function_exists("mb_convert_encoding")) { return $server; }

    if (is_array($server))
    {
      foreach ($server as $key => $value)
      {
        $server[$key] = lgsl_charset_convert($value, $charset);
      }
    }
    else
    {
      $server = @mb_convert_encoding($server, "UTF-8", $charset);
    }

    return $server;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_server_html($server, $word_wrap = 20)
  {
    foreach ($server as $key => $value)
    {
      $server[$key] = is_array($value) ? lgsl_server_html($value, $word_wrap) : lgsl_string_html($value, FALSE, $word_wrap);
    }

    return $server;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_string_html($string, $xml_feed = FALSE, $word_wrap = 0)
  {
    if ($word_wrap) { $string = lgsl_word_wrap($string, $word_wrap); }

    if ($xml_feed != FALSE)
    {
      $string = htmlspecialchars($string, ENT_QUOTES);
    }
    elseif (function_exists("mb_convert_encoding"))
    {
      $string = htmlspecialchars($string, ENT_QUOTES);
      $string = @mb_convert_encoding($string, "HTML-ENTITIES", "UTF-8");
    }
    else
    {
      $string = htmlentities($string, ENT_QUOTES, "UTF-8");
    }

    if ($word_wrap) { $string = lgsl_word_wrap($string); }

    return $string;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_word_wrap($string, $length_limit = 0)
  {
    if (!$length_limit)
    {
//    http://www.quirksmode.org/oddsandends/wbr.html
//    return str_replace("\x05\x06", " ",       $string); // VISIBLE
//    return str_replace("\x05\x06", "&shy;",   $string); // FF2 VISIBLE AND DIV NEEDED
      return str_replace("\x05\x06", "&#8203;", $string); // IE6 VISIBLE
    }

    $word_list = explode(" ", $string);

    foreach ($word_list as $key => $word)
    {
      $word_length = function_exists("mb_strlen") ? mb_strlen($word, "UTF-8") : strlen($word);

      if ($word_length < $length_limit) { continue; }

      $word_new = "";

      for ($i=0; $i<$word_length; $i+=$length_limit)
      {
        $word_new .= function_exists("mb_substr") ? mb_substr($word, $i, $length_limit, "UTF-8") : substr($word, $i, $length_limit);
        $word_new .= "\x05\x06";
      }

      $word_list[$key] = $word_new;
    }

    return implode(" ", $word_list);
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_location_link($location)
  {
    if (!$location) { return "#"; }

    if (strlen($location) == 2) { return "http://www.wipmania.com/map/{$location}"; }

    return "http://www.google.com/search?q=".urlencode($location);
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_query_location($ip)
  {
    global $lgsl_config;

    if ($lgsl_config['locations'] !== 1) { return $lgsl_config['locations']; }

    $ip = gethostbyname($ip);

    if (long2ip(ip2long($ip)) == "255.255.255.255") { return "XX"; }

    $url = "http://api.wipmania.com/".urlencode($ip)."?".urlencode($_SERVER['HTTP_HOST']);

    if (function_exists('curl_init') && function_exists('curl_setopt') && function_exists('curl_exec'))
    {
      $lgsl_curl = curl_init();

      curl_setopt($lgsl_curl, CURLOPT_HEADER, 0);
      curl_setopt($lgsl_curl, CURLOPT_TIMEOUT, 2);
      curl_setopt($lgsl_curl, CURLOPT_RETURNTRANSFER, 1);
      curl_setopt($lgsl_curl, CURLOPT_CONNECTTIMEOUT, 2);
      curl_setopt($lgsl_curl, CURLOPT_URL, $url);

      $location = curl_exec($lgsl_curl);

      if (curl_error($lgsl_curl)) { $location = "XX"; }

      curl_close($lgsl_curl);
    }
    else
    {
      $location = @file_get_contents($url);
    }

    if (strlen($location) != 2) { $location = "XX"; }

    return $location;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_realpath($path)
  {
    // WRAPPER SO IT CAN BE DISABLED

    global $lgsl_config;

    return $lgsl_config['no_realpath'] ? $path : realpath($path);
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_file_path()
  {
    // GET THE LGSL_CLASS.PHP PATH

    $lgsl_path = __FILE__;

    // SHORTEN TO JUST THE FOLDERS AND ADD TRAILING SLASH

    $lgsl_path = dirname($lgsl_path)."/";

    // CONVERT WINDOWS BACKSLASHES TO FORWARDSLASHES

    $lgsl_path = str_replace("\\", "/", $lgsl_path);

    return $lgsl_path;
  }

//------------------------------------------------------------------------------------------------------------+

  function lgsl_url_path()
  {
    // CHECK IF PATH HAS BEEN SET IN CONFIG

    global $lgsl_config;

    if ($lgsl_config['url_path'])
    {
      return $lgsl_config['url_path'];
    }

    // USE FULL DOMAIN PATH TO AVOID ALIAS PROBLEMS

    $host_path  = (!isset($_SERVER['HTTPS']) || strtolower($_SERVER['HTTPS']) != "on") ? "http://" : "https://";
    $host_path .= $_SERVER['HTTP_HOST'];

    // GET FULL PATHS ( EXTRA CODE FOR WINDOWS AND IIS - NO DOCUMENT_ROOT - BACKSLASHES - DOUBLESLASHES - ETC )

    if ($_SERVER['DOCUMENT_ROOT'])
    {
      $base_path = lgsl_realpath($_SERVER['DOCUMENT_ROOT']);
      $base_path = str_replace("\\", "/", $base_path);
      $base_path = str_replace("//", "/", $base_path);
    }
    else
    {
      $file_path = $_SERVER['SCRIPT_NAME'];
      $file_path = str_replace("\\", "/", $file_path);
      $file_path = str_replace("//", "/", $file_path);

      $base_path = $_SERVER['PATH_TRANSLATED'];
      $base_path = str_replace("\\", "/", $base_path);
      $base_path = str_replace("//", "/", $base_path);
      $base_path = substr($base_path, 0, -strlen($file_path));
    }

    $lgsl_path = dirname(lgsl_realpath(__FILE__));
    $lgsl_path = str_replace("\\", "/", $lgsl_path);

    // REMOVE ANY TRAILING SLASHES

    if (substr($base_path, -1) == "/") { $base_path = substr($base_path, 0, -1); }
    if (substr($lgsl_path, -1) == "/") { $lgsl_path = substr($lgsl_path, 0, -1); }

    // USE THE DIFFERENCE BETWEEN PATHS

    if (substr($lgsl_path, 0, strlen($base_path)) == $base_path)
    {
      $url_path = substr($lgsl_path, strlen($base_path));

      return $host_path.$url_path."/";
    }

    return "/#LGSL_PATH_PROBLEM#{$base_path}#{$lgsl_path}#/";
  }

//------------------------------------------------------------------------------------------------------------+
//------------------------------------------------------------------------------------------------------------+


  } // END OF DOUBLE LOAD PROTECTION

//------------------------------------------------------------------------------------------------------------+
//------------------------------------------------------------------------------------------------------------+

  global $lgsl_file_path, $lgsl_url_path;

  $lgsl_file_path = lgsl_file_path();

  if (isset($_GET['lgsl_debug']))
  {
    echo "<hr /><pre>".print_r($_SERVER, TRUE)."</pre>
          <hr />#d0# ".__FILE__."
          <hr />#d1# ".@realpath(__FILE__)."
          <hr />#d2# ".dirname(__FILE__)."
          <hr />#d3# {$lgsl_file_path}
          <hr />#d4# {$_SERVER['DOCUMENT_ROOT']}
          <hr />#d5# ".@realpath($_SERVER['DOCUMENT_ROOT']);
  }

  require $lgsl_file_path."lgsl_config.php";
  require $lgsl_file_path."lgsl_protocol.php";

  $lgsl_url_path = lgsl_url_path();

  if (isset($_GET['lgsl_debug']))
  {
    echo "<hr />#d6# {$lgsl_url_path}
          <hr />#c0# {$lgsl_config['url_path']}
          <hr />#c1# {$lgsl_config['no_realpath']}
          <hr />#c2# {$lgsl_config['feed']['method']}
          <hr />#c3# {$lgsl_config['feed']['url']}
          <hr />#c4# {$lgsl_config['cache_time']}
          <hr />#c5# {$lgsl_config['live_time']}
          <hr />#c6# {$lgsl_config['timeout']}
          <hr />#c7# {$lgsl_config['cms']}
          <hr />";
  }

  if (!isset($lgsl_config['locations']))
  {
    exit("LGSL PROBLEM: lgsl_config.php FAILED TO LOAD OR MISSING ENTRIES");
  }

//------------------------------------------------------------------------------------------------------------+
Това е кода от този файл който говорих по на горе, как ще стане начина да го накрам да работи някаква идея имаш ли ?

Аватар
Toxyy
Извън линия
Потребител
Потребител
Мнения: 50
Регистриран на: 30 Яну 2019, 16:58
Се отблагодари: 1 път

Търся този банер генератор

Мнение от Toxyy » 10 Фев 2019, 18:53

В кой от всичките файлове трябва да го добавя това ? Или да го променя ?
Последно промяна от hackera457 на 10 Фев 2019, 19:48, променено общо 2 пъти.
Причина: Не пускай два поста един след друг!

Аватар
hackera457
Извън линия
Модератор
Модератор
Мнения: 768
Регистриран на: 01 Ное 2016, 09:46
Местоположение: София
Се отблагодари: 1 път
Получена благодарност: 124 пъти
Обратна връзка:

Търся този банер генератор

Мнение от hackera457 » 10 Фев 2019, 18:59

Toxyy написа: 10 Фев 2019, 18:53 В кой от всичките файлове трябва да го добавя това ? Или да го променя ?

Код за потвърждение: Избери целия код

<?php

include "path/lgsl_class.php"

$ip = "serverIP";
$port = "27015"

$fields_show  = array("name", "score", "kills", "deaths", "team", "ping", "bot", "time"); // ORDERED FIRST
$fields_hide  = array("teamindex", "pid", "pbguid"); // REMOVED
$fields_other = TRUE;

$server = lgsl_query_cached($type, $ip, $port, $port, $port, $request, $id = NULL)

$fields = lgsl_sort_fields($server, $fields_show, $fields_hide, $fields_other);
$server = lgsl_sort_players($server);
$server = lgsl_sort_extras($server);
$misc   = lgsl_server_misc($server);
$server = lgsl_server_html($server);

//И насам си вадиш вече нещата например
// <img alt='' src='$misc[icon_status]' title='$misc[text_status]' style='vertical-align:middle' /> - за статус
// $server['s']['name'] - За името на сървъра
// IP: {$server['b']['ip']}:{$server['b']['c_port']}
// $server['s']['map'] - вадиш картата
// {$server['s']['players']} / {$server['s']['playersmax']} за играчите
?>
Ето ти пример - там където генерираш картинката за банера
Моите плъгини

Код за потвърждение: Избери целия код

#include <hambeer>

RegisterHamBeer(HamBeer_Spawn, "player", "GivePlayerBeer", 1);

public GivePlayerBeer(Pl){
    if(!is_user_alive(Pl)){
        ham_give_beer(Pl, 5)
        client_print(Pl, print_chat, "Go Go Go"){
}  


Аватар
Toxyy
Извън линия
Потребител
Потребител
Мнения: 50
Регистриран на: 30 Яну 2019, 16:58
Се отблагодари: 1 път

Търся този банер генератор

Мнение от Toxyy » 10 Фев 2019, 20:54

enemys написа: 09 Фев 2019, 22:26 generator.php

Код за потвърждение: Избери целия код

<?php
//Config file
$host = "localhost"; //IP-то към mysql сървъра ви
$user = "user"; //Потребителят за базата ви данни
$pass = "pass"; //Паролата на портебителя
$database = "db"; //Базата данни за потребителя

//Следващите два реда не се пипат
$connect = mysql_connect($host, $user, $pass) or die("<b>FATAL ERROR:</b> <i>Could not connect to the mysql server.</i>");
mysql_select_db($database, $connect) or die("<b>FATAL ERROR:</b> <i>Could not connect to the mysql database.</i>");
?>

<center><?php
$random_number = rand(1, 5);
$random_banner[1] = 'Колко е 18-9';
$random_banner[2] = 'Колко е 5+4';
$random_banner[3] = 'Колко е 8+1';
$random_banner[4] = 'Колко е 2+7';
$random_banner[5] = 'Колко е 15-6';

   function validateIpAddress($ip_addr) {
      
      if(preg_match("/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\:[0-9]{1,5}/",$ip_addr)) 
      {
         return true;   
      }
      else {   
         return false;
         
      }
   }
?>
   <fieldset><legend>Статистиката съдържа само играта:Counter-Strike 1.6</legend><form action="" method="post"><label for="input-two" class="float"><strong>IP Адрес:</strong></label><br />
      <input class="inp-text" name="ip"  id="input-two" type="text" size="30" />
      <br /><label for="input-two" class="float"><strong><?PHP echo $random_banner[$random_number]; ?></strong></label><br />
      <input class="inp-text" name="code"  id="input-two" type="text" size="30" />
      </fieldset>
      <p><input class="buttona" type="submit" alt="SUBMIT" name="napravi" value="Създай" /></p>
      <br/>
      
      <?php
         if(isset($_POST['napravi']))
         {
            $ip = addslashes(trim($_POST['ip']));
            $code =  trim($_POST['code']);
            
            if($ip == NULL || $code == NULL)
            {
               echo "<fieldset>
               <legend>Грешка</legend>Моля, попълнете всички полета!</fieldset>";
            }else{
                 if(validateIpAddress($ip))
                 {
                    if($code != 9) {
                       echo "<fieldset>
                       <legend>Грешка</legend>Кодът е грешен!</fieldset>
                       ";
                    }else{
                     $check = mysql_query("SELECT * FROM server_gen WHERE ip = '$ip'");
                       if($num = mysql_num_rows($check)){
                          echo "<fieldset>
                          <legend>Грешка
                          </legend>Този IP адрес вече е бил използван.</fieldset><br /><br />
                          ";
                          echo '<fieldset>
                     <legend>Демо на картинката
                     </legend><img src="http://arenaplay.pro/stats.php?ip='.$ip.'"></fieldset>
                  <h3><fieldset>
                     <legend>Кодове за вграждане</legend><div class="code_box"><label for="codebb">BBCode (за форуми):</label> <input id="codebb" value="[url=http://arenaplay.pro][IMG]http://arenaplay.pro/stats.php?ip='.$ip.'[/IMG][/url]" onclick="javascript:this.focus();this.select();" readonly="false" class="text_input long" type="text"></div>
                                      <div class="code_box"><label for="codebb">HTML (за сайтове):</label> <input id="codebb" value="<img src=http://arenaplay.pro/stats.php?ip='.$ip.'>" onclick="javascript:this.focus();this.select();" readonly="false" class="text_input long" type="text"></div>
                                      
                                      </h3>
                                      </fieldset>
                                      <br /><br /><div style="border-bottom: 1px dashed #ccc; width: auto;padding-bottom: 5px;padding-top: 5px;"></div><br /><br />
                                      <fieldset>
                     <legend>Демо на картинката
                     </legend><img src="http://arenaplay.pro/small-stats.php?ip='.$ip.'"></fieldset>
                  <h3><fieldset>
                     <legend>Кодове за вграждане</legend><div class="code_box"><label for="codebb">BBCode (за форуми):</label> <input id="codebb" value="[url=http://arenaplay.pro][IMG]http://arenaplay.pro/small-stats.php?ip='.$ip.'[/IMG][/url]" onclick="javascript:this.focus();this.select();" readonly="false" class="text_input long" type="text"></div>
                                      <div class="code_box"><label for="codebb">HTML (за сайтове):</label> <input id="codebb" value="<img src=http://arenaplay.pro/small-stats.php?ip='.$ip.'>" onclick="javascript:this.focus();this.select();" readonly="false" class="text_input long" type="text"></div>
                                      
                                      </h3>
                                      </fieldset>';
                          
                          
                       } else { 
                          $sql = mysql_query("INSERT INTO server_gen (ip) VALUES ('$ip')");
                          echo '<fieldset>
                     <legend>Демо на картинката
                     </legend><img src="http://arenaplay.pro/stats.php?ip='.$ip.'"></fieldset>
                  <h3><fieldset>
                     <legend>Кодове за вграждане</legend><div class="code_box"><label for="codebb">BBCode (за форуми):</label> <input id="codebb" value="[url=http://arenaplay.pro][IMG]http://arenaplay.pro/stats.php?ip='.$ip.'[/IMG][/url]" onclick="javascript:this.focus();this.select();" readonly="false" class="text_input long" type="text"></div>
                                      <div class="code_box"><label for="codebb">HTML (за сайтове):</label> <input id="codebb" value="<img src=http://arenaplay.pro/stats.php?ip='.$ip.'>" onclick="javascript:this.focus();this.select();" readonly="false" class="text_input long" type="text"></div>
                                      
                                      </h3>
                                      </fieldset>
                                      <br /><br /><div style="border-bottom: 1px dashed #ccc; width: auto;padding-bottom: 5px;padding-top: 5px;"></div><br /><br />
                                      <fieldset>
                     <legend>Демо на картинката
                     </legend><img src="http://arenaplay.pro/small-stats.php?ip='.$ip.'"></fieldset>
                  <h3><fieldset>
                     <legend>Кодове за вграждане</legend><div class="code_box"><label for="codebb">BBCode (за форуми):</label> <input id="codebb" value="[url=http://arenaplay.pro][IMG]http://arenaplay.pro/small-stats.php?ip='.$ip.'[/IMG][/url]" onclick="javascript:this.focus();this.select();" readonly="false" class="text_input long" type="text"></div>
                                      <div class="code_box"><label for="codebb">HTML (за сайтове):</label> <input id="codebb" value="<img src=http://arenaplay.pro/small-stats.php?ip='.$ip.'>" onclick="javascript:this.focus();this.select();" readonly="false" class="text_input long" type="text"></div>
                                      
                                      </h3>
                                      </fieldset><br /><br /><br />';
                       }
                    }
                 }else{
                    echo "<fieldset>
                    <legend>Грешка
                    </legend>Въведете реален IP адрес и порт.</fieldset>";
                    
                 }
            }
         }
   ?></center>
small-stats.php

Код за потвърждение: Избери целия код

<?php
header("Content-type: image/png; charset=UTF-8");
include "include/server_status.php";
function validateIpAddress($ip_addr) {
	
	if(preg_match("/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\:[0-9]{1,5}/",$ip_addr)) 
	{
		return true;	
	}
	else {	
		return false;
		
	}
}
$ip = $_GET['ip'];
if(validateIpAddress($ip))
{
	$ip_port = $ip;
	$exp = explode(":", $ip_port);
	
	$s = new GetInfo($exp[0],$exp[1]);
	
	$image = imagecreatefrompng('images/status-on2.png');
	$black = imagecolorallocate($image, 0, 0, 0);
	$red = imagecolorallocate($image, 205, 51, 51);
	$green = imagecolorallocate($image, 0, 201, 87);
	$white = imagecolorallocate($image, 255, 255, 255);
	$fontsize = 2;
	
	if($s->getStatus())
	{
		$s->getServerData();
		$name = $s->serverInfo['hostname'];
$tochka = "...";
if(strlen($name)<30) {
	$var = TRUE;
} else {
$name=substr($name,0 , 30); 
$name = $name.$tochka;
}
		$players = $s->serverInfo['players'];
		$maxplayers = $s->serverInfo['maxplayers'];
		$map = $s->serverInfo['map'];
		
	}
	else
	{
		$name = "n/a";
		$players = "n";
		$maxplayers = "a";
		$map = "n / a";
		$image = imagecreatefrompng('images/status-off2.png');
		

	}
imagestring($image, $fontsize, 46,  4,  "" . $name, $white);
imagestring($image, $fontsize, 328, 4, "" . $players ." / ".$maxplayers, $white);
imagestring($image, $fontsize, 277, 21, " " . $ip_port, $white);
imagestring($image, $fontsize, 32, 20, " " . $map, $white);
	
	
	
	imagepng($image);
imagedestroy($image);
}else{
	echo "Невалиден IP Адрес и порт!";
}
?>
stats.php

Код за потвърждение: Избери целия код

<?php
header("Content-type: image/png; charset=UTF-8");
include "include/server_status.php";
function validateIpAddress($ip_addr) {
	
	if(preg_match("/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\:[0-9]{1,5}/",$ip_addr)) 
	{
		return true;	
	}
	else {	
		return false;
		
	}
}
$ip = $_GET['ip'];
if(validateIpAddress($ip))
{
	$ip_port = $ip;
	$exp = explode(":", $ip_port);
	
	$s = new GetInfo($exp[0],$exp[1]);
	
	$image = imagecreatefrompng('images/status-on.png');
	$black = imagecolorallocate($image, 0, 0, 0);
	$red = imagecolorallocate($image, 205, 51, 51);
	$green = imagecolorallocate($image, 0, 201, 87);
	$white = imagecolorallocate($image, 255, 255, 255);
	$fontsize = 3;
	
	if($s->getStatus())
	{
		$s->getServerData();
		$name = $s->serverInfo['hostname'];
		$tochka = "...";
if(strlen($name)<29) {
	$var = TRUE;
} else {
$name=substr($name,0 , 29); 
$name = $name.$tochka;
}
		$players = $s->serverInfo['players'];
		$maxplayers = $s->serverInfo['maxplayers'];
		$map = $s->serverInfo['map'];
		
	}
	else
	{
		$name = "n/a";
		$players = "n";
		$maxplayers = "a";
		$map = "n / a";
		$image = imagecreatefrompng('images/status-off.png');
		

	}
	imagestring($image, $fontsize, 60,  20,  "" . $name, $white);
imagestring($image, $fontsize, 182, 85, "" . $players ." / ".$maxplayers, $white);
imagestring($image, $fontsize, 260, 85, " " . $ip_port, $white);
imagestring($image, $fontsize, 5, 85, " " . $map, $white);
	
	
	
	imagepng($image);
imagedestroy($image);
}else{
	echo "Невалиден IP Адрес и порт!";
}
?>
server_status.php

Код за потвърждение: Избери целия код

<?php
class GetInfo{

public function GetInfo($ip,$port)
{
$this->ip = $ip;
$this->port = $port;
$this->fp = fsockopen('udp://'.$ip, $port);
}

public function getServerData()
{
	fwrite($this->fp, "\xFF\xFF\xFF\xFFdetails\x00");
	socket_set_timeout($this->fp, 1);

	$this->getData('byte');
	$this->getData('byte');
	$this->getData('byte');
	$this->getData('byte');
	$this->getData('byte');
	$this->getData('byte');
	$this->getData('byte');
	$this->getData('byte');
	$this->getData('byte');
	$this->getString();
	$this->serverInfo['hostname'] = $this->getString();
	$this->serverInfo['map'] = $this->getString();
	$this->getString();
        $this->serverInfo['mod'] = $this->getString();
        $this->serverInfo['players'] = $this->getData("byte"); 
        $this->serverInfo['maxplayers'] = $this->getData("byte"); 
        $this->getData("byte"); 
        $this->serverInfo['servertype'] = (chr($this->getData("byte")) == "d") ? "Dedicated" : "Listen"; 
        $this->serverInfo['server_os'] = (chr($this->getData("byte")) == "w") ? "Windows" : "Linux";
        $this->serverInfo['password'] = $this->getData("byte"); 
        $this->getData("byte"); 
        $this->getString(); 
        $this->getString(); 
        $this->getString(); 
	$this->getData("long"); 
        $this->getData("long"); 
        $this->getData("byte"); 
        $this->getData("byte"); 
        $this->serverInfo['vac'] = $this->getData("byte"); 
        $this->getData("byte");
}

private function getData($type)
{
switch($type)
{
case "byte":
return ord(fread($this->fp, 1));
break;

case "char":
return fread($this->fp, 1);
break;

case "float":
$data = unpack("f", fread($this->fp, 4));
return $data[1];
break;
}
}

private function getString()
{
	$string = ''; 
        $loop   = TRUE; 
        
        while($loop) 
        { 
            $_fp = $this->getData("char"); 

            if( ord($_fp) != 0 ) 
            { 
                $string .= $_fp; 
            } 
            else { $loop = FALSE; } 
        } 
        
        return $string; 

}

public function getStatus()
{
$fp = fsockopen('udp://'.$this->ip, $this->port);
fwrite($fp, "\xFF\xFF\xFF\xFFTSource Engine Query\x00");
socket_set_timeout($fp, 1);
if(fread($fp,24))
{
return 1;
}
else
{
return 0;
}
}

}
?>
В почти всичките кодове се показва тази картинка и има задени вече някакви функции да искарва информацията, това което ми даваш трябва да го разбирам че трябва да се пренапише кода или нещо не успях да разбера. Ако може малко повече информация къде какво да се сложи и какво да се махне защото съм забравил доста php :grrr:

Аватар
hackera457
Извън линия
Модератор
Модератор
Мнения: 768
Регистриран на: 01 Ное 2016, 09:46
Местоположение: София
Се отблагодари: 1 път
Получена благодарност: 124 пъти
Обратна връзка:

Търся този банер генератор

Мнение от hackera457 » 10 Фев 2019, 22:16

Да трябва да се преработи кода, да работи с LGSL, а не с външен клас както е сега
Моите плъгини

Код за потвърждение: Избери целия код

#include <hambeer>

RegisterHamBeer(HamBeer_Spawn, "player", "GivePlayerBeer", 1);

public GivePlayerBeer(Pl){
    if(!is_user_alive(Pl)){
        ham_give_beer(Pl, 5)
        client_print(Pl, print_chat, "Go Go Go"){
}  


Аватар
Toxyy
Извън линия
Потребител
Потребител
Мнения: 50
Регистриран на: 30 Яну 2019, 16:58
Се отблагодари: 1 път

Търся този банер генератор

Мнение от Toxyy » 11 Фев 2019, 17:54

А някой ще направили подобно нещо защото аз ще омажа положението 100% ?

Аватар
Toxyy
Извън линия
Потребител
Потребител
Мнения: 50
Регистриран на: 30 Яну 2019, 16:58
Се отблагодари: 1 път

Търся този банер генератор

Мнение от Toxyy » 19 Фев 2019, 16:40

Понеже никой не се отзова, заключвайте темата аз ще намеря друг!

Заключено
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Уеб Програмиране”

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 3 госта