Возможно Ли Сделать?

gangcstar

New Member
День добрый, форумчане, у меня вопрос:

возможно ли сделать так, чтобы список Админов и Вип из users.ini отображалсЯ у меня на сайте, т.е если я добавляю нового админа в users.ini а он автоматически уже появлялся на сайте =) + выво онлайн админов сервера на сайте можно как-то организовать?
 

Stolen

Fraggers :3
День добрый, форумчане, у меня вопрос:

возможно ли сделать так, чтобы список Админов и Вип из users.ini отображалсЯ у меня на сайте, т.е если я добавляю нового админа в users.ini а он автоматически уже появлялся на сайте =) + выво онлайн админов сервера на сайте можно как-то организовать?
Можно
 

๖ۣۣۜCrAsH™

Завсегдатый
Держи

Плагин:

Код:
#include <amxmodx>
#include <amxmisc>
#include <sqlx>

#define PLUGIN "UsersWeb"
#define VERSION "1.0"
#define AUTHOR "CrAsH"

new Handle:MYSQL_Tuple
new Handle:MYSQL_Connect

new g_LoadUsers[81]
new g_Cvar[5]

public plugin_init() 
{
	register_plugin(PLUGIN, VERSION, AUTHOR)

	g_Cvar[1] = register_cvar("amx_mysql_hostname", "127.0.0.1")
	g_Cvar[2] = register_cvar("amx_mysql_username", "root")
	g_Cvar[3] = register_cvar("amx_mysql_password", "vertrigo") 
	g_Cvar[4] = register_cvar("amx_mysql_database", "usersweb")

	set_task(1.0, "MYSQL_Load")
}

public plugin_cfg()
{
	get_configsdir(g_LoadUsers, charsmax( g_LoadUsers ))
	formatex(g_LoadUsers, charsmax( g_LoadUsers ), "%s/users.ini", g_LoadUsers) 
}

public MYSQL_Load()
{
	new szHostname[30], szUsername[30], szPassword[30], szDatabase[30]
	new szError[512], szErr

	get_pcvar_string(g_Cvar[1], szHostname, charsmax( szHostname ))
	get_pcvar_string(g_Cvar[2], szUsername, charsmax( szUsername ))
	get_pcvar_string(g_Cvar[3], szPassword, charsmax( szPassword ))
	get_pcvar_string(g_Cvar[4], szDatabase, charsmax( szDatabase ))

	MYSQL_Tuple = SQL_MakeDbTuple(szHostname, szUsername, szPassword, szDatabase)
	MYSQL_Connect= SQL_Connect(MYSQL_Tuple, szErr, szError, charsmax( szError )) 

	if(MYSQL_Connect == Empty_Handle)
		set_fail_state( szError )

	Loaded()
}

public Loaded()
{
	new szError[512]
	new szParse[128]
	new szParseData[64], szParsePassword[64], szParseFlags[32]
	new szFixData[64]
	new szLine, szNum

	new Handle:szInsert = SQL_PrepareQuery(MYSQL_Connect, "DELETE FROM `users`;")
	
	if(!SQL_Execute( szInsert ))	
	{
		SQL_QueryError(szInsert, szError, charsmax( szError ))
		set_fail_state( szError )
	}

	for(szLine=0;read_file(g_LoadUsers, szLine, szParse, charsmax( szParse ), szNum);szLine++) 
	{
		if(szNum > 0 && szParse[0] != ';')
		{
			parse(szParse, szParseData, charsmax( szParseData ), szParsePassword, charsmax( szParsePassword ), szParseFlags, charsmax( szParseFlags ))

			SQL_QuoteString(MYSQL_Connect ,szFixData, charsmax( szFixData ), szParseData)

			new Handle:szInsert = SQL_PrepareQuery(MYSQL_Connect, "INSERT INTO `users` (`nickname`, `flags`) VALUES ('%s', '%s');", szFixData, szParseFlags)
	
			if(!SQL_Execute( szInsert ))	
			{
				SQL_QueryError(szInsert, szError, charsmax( szError ))
				set_fail_state( szError )
			}
		}
	}
}
Дамп базы:
Код:
CREATE TABLE IF NOT EXISTS `users` (
  `id` int(10) unsigned NOT NULL auto_increment,
  `nickname` varchar(64) NOT NULL,
  `flags` varchar(32) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=0 ;
Простенькая вебчасть для вывода
http://rghost.ru/44581338

Таблица будет обновляться каждую карту.
Дизайн, дополнительные таблицы если нужны сделаешь сам.
 
Сверху