AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Need help with zp50_bank_sqlx (https://forums.alliedmods.net/showthread.php?t=214963)

ben_x 05-01-2013 22:17

Need help with zp50_bank_sqlx
 
Code:

#include <sqlx>
public plugin_end()
{
 if(!get_pcvar_num(CvarAutoSave))
  return
 
 new iPlayers[32], iNum
 get_players(iPlayers, iNum)
 
 new iPlayer
 for(new i = 0; i < iNum; i++)
 {
  iPlayer = iPlayers[i]
 
  Save_MySQL(iPlayer)
 }
 if (g_SqlTuple) SQL_FreeHandle(g_SqlTuple)
 //SQL_FreeHandle(g_SqlTuple)
}
public MySQL_Init()
{
 g_SqlTuple = SQL_MakeDbTuple(SQL_HOST, SQL_USER, SQL_PASS, SQL_DB)
 
 new ErrorCode, Handle:SqlConnection = SQL_Connect(g_SqlTuple, ErrorCode, g_Error, charsmax(g_Error))
 
 if(SqlConnection == Empty_Handle)
  set_fail_state(g_Error)
 
 new Handle:Queries
 
 Queries = SQL_PrepareQuery(SqlConnection, "CREATE TABLE IF NOT EXISTS bank (steamplayer varchar(32),ammopacks INT(32),last_played TIMESTAMP(10) NOT NULL)")
 
 if(!SQL_Execute(Queries))
 {
  SQL_QueryError(Queries, g_Error, charsmax(g_Error))
  set_fail_state(g_Error)
 }
 
 SQL_FreeHandle(Queries)
 SQL_FreeHandle(SqlConnection) 
}
public MySQL_CoreFunction(FailState, Handle:Query, Error[], Errcode, Data[], DataSize)
{
 if(FailState == TQUERY_CONNECT_FAILED)
 {
  log_amx("Load - Could not connect to SQL database.  [%d] %s", Errcode, Error)
 }
 else if(FailState == TQUERY_QUERY_FAILED)
 {
  log_amx("Load Query failed. [%d] %s", Errcode, Error)
 }
 
 new player
 player = Data[0]
 
 if(SQL_NumResults(Query) < 1)
 {
  if(equal(g_iSteamID[player], "player_PENDING"))
  return PLUGIN_HANDLED
 
  new szTemp[512]
 
  format(szTemp, 511, "INSERT INTO `bank` ( `steamplayer` , `ammopacks` , `last_played`)VALUES ('%s','0',SYSDATE());", g_iSteamID[player])
  SQL_ThreadQuery(g_SqlTuple, "IgnoreHandle", szTemp)
 }
 else
 {
  g_iBank[player] = SQL_ReadResult(Query, 1)
 }
 
 return PLUGIN_HANDLED
}
public IgnoreHandle(FailState, Handle:Query, Error[], Errcode, Data[], DataSize)
{
 SQL_FreeHandle(Query)
 
 return PLUGIN_HANDLED
}
public Load_MySQL(player)
{
 new szTemp[512]
 
 new Data[1]
 Data[0] = player
 
 format(szTemp, 511, "SELECT * FROM `bank` WHERE (`bank`.`steamplayer` = '%s')", g_iSteamID[player])
 SQL_ThreadQuery(g_SqlTuple, "MySQL_CoreFunction", szTemp, Data, 1)    /// <- Getting errors
}
public Save_MySQL(player)
{
 new szTemp1[512], szTemp2[512]
 
 if(!IsManual[player])
 {
  g_iAmmoPacks[player] = zp_ammopacks_get(player)
 
  g_iBank[player] = (g_iBank[player] += g_iAmmoPacks[player])
 }
 else
 {
  IsManual[player] = false
 }
 
 format(szTemp1, 511, "UPDATE `bank` SET `ammopacks` = '%i' WHERE `bank`.`steamplayer` = '%s';", g_iBank[player], g_iSteamID[player])
 format(szTemp2, 511, "UPDATE `bank` SET `last_played` = SYSDATE() WHERE `bank`.`steamplayer` = '%s';", g_iSteamID[player])
 
 SQL_ThreadQuery(g_SqlTuple, "IgnoreHandle", szTemp1)  // <- Getting errors
 SQL_ThreadQuery(g_SqlTuple, "IgnoreHandle", szTemp2) 
}

Run time error 10: native error (native "SQL_ThreadQuery")
[0] zp50_bank_sqlx.inc::MySQL_CoreFunction (line 67)





Run time error 10: native error (native "SQL_ThreadQuery")
[0] zp50_bank_sqlx.inc::Save_MySQL (line 113)
[1] zp50_ammo_packs_bank.sma::OnClientChat (line 194)


Can someone fix this ?


All times are GMT -4. The time now is 10:46.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.