Code:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <sqlx>
#define PLUGIN "Player Status in DB"
#define VERSION "0.73"
#define AUTHOR "SandStriker"
#define MAX_NAME_LENGTH 31
#define MAX_ERR_LENGTH 128
#define MAX_QUERY_LENGTH 1024
#define MAX_LENGTH 31
//Database setting pointers
new g_dbhost,g_dbuser,g_dbpass,g_dbname,g_tbname
//Database Handles
new Handle:g_dbt,Handle:g_dbc
//Table name
new g_ptbname[MAX_LENGTH+1]
#define TASK_ID 6218742
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
g_dbhost = register_cvar("amx_sql_host","127.0.0.1")
g_dbuser = register_cvar("amx_sql_user","root")
g_dbpass = register_cvar("amx_sql_pass","")
g_dbname = register_cvar("psd_sql_db","xweb_csdb")
g_tbname = register_cvar("psd_tbname","test")
// Add your code here...
set_task(1.0,"plugin_core",0,"",0,"",0)
}
public plugin_core()
{
new host[64],user[32],pass[32],db[32],error[MAX_ERR_LENGTH+1],ercode
get_pcvar_string(g_dbhost, host, 63)
get_pcvar_string(g_dbuser, user, 31)
get_pcvar_string(g_dbpass, pass, 31)
get_pcvar_string(g_dbname, db, 31)
get_pcvar_string(g_tbname, g_ptbname,31)
g_dbt = SQL_MakeDbTuple(host,user,pass,db)
g_dbc = SQL_Connect(g_dbt,ercode,error,127)
if(g_dbc == Empty_Handle)
{
server_print("[PSD] Error No.%d: %s", ercode,error)
}else {
server_print("[PSD] Connecting successful.")
init_database()
//init_insert()
//sql_disconnect()
//set_task(get_pcvar_num(g_uptime)*60.0,"UpdateInServer",TASK_ID,"",0,"b")
}
return PLUGIN_CONTINUE
}
public plugin_end() {
if(task_exists(TASK_ID))
remove_task(TASK_ID)
sql_disconnect()
return PLUGIN_CONTINUE
}
//Disconnect MySQL server
sql_disconnect() {
SQL_FreeHandle(g_dbc)
SQL_FreeHandle(g_dbt)
server_print("[PSD] Closing connection...")
return PLUGIN_CONTINUE
}
//Create Table
init_database() {
new Handle:result
new QUERY[MAX_QUERY_LENGTH]
formatex(QUERY,MAX_QUERY_LENGTH,
"CREATE TABLE IF NOT EXISTS `%s` (`authid` VARCHAR( 32 ) NOT NULL, `name` VARCHAR( 32 ) NOT NULL , `date` TIMESTAMP( 10 ) NOT NULL , `score` INT NOT NULL ,`kills` INT NOT NULL , `teamkills` INT NOT NULL, `deaths` INT NOT NULL , `hits` INT NOT NULL , `shots` INT NOT NULL , `headshots` INT NOT NULL , `efficiency` DOUBLE (19,2) DEFAULT NULL, `accuracy` double(19,2) default NULL,`accuracyHS` double(19,2) default NULL,`kdrate` double(19,2) default NULL, PRIMARY KEY(`authid`))", g_ptbname)
result = SQL_PrepareQuery(g_dbc, QUERY)
SQL_Execute(result)
formatex(QUERY,MAX_QUERY_LENGTH,"ALTER TABLE `%s` ADD `kdrate` double(19,2) default NULL",g_ptbname)
result = SQL_PrepareQuery(g_dbc, QUERY)
SQL_Execute(result)
SQL_FreeHandle(result)
return PLUGIN_CONTINUE
}
/*
CheckError(Handle:result)
{
new err[MAX_ERR_LENGTH+1]
SQL_QueryError(result,err,MAX_ERR_LENGTH)
server_print("[PSD] Error: %s",err)
}
*/