AGHeadline

Untitled

Jul 22nd, 2015
260
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 2.09 KB | None | 0 0
  1. #include <sourcemod>
  2.  
  3. #pragma semicolon 1
  4.  
  5. new Handle:g_hDB = INVALID_HANDLE;
  6.  
  7. public Plugin:myinfo =
  8. {
  9.     name = "Learning MySQL",
  10.     author = "Headline",
  11.     description = "Learning MySQL",
  12.     version = "1.0"
  13. };
  14.  
  15. public OnPluginStart()
  16. {
  17.     decl String:sError[128];
  18.     g_hDB = SQL_Connect("storenumber", true, sError, sizeof(sError));
  19.     SQL_TQuery(g_hDB, SQLCallback_Void, "CREATE TABLE IF NOT EXISTS `storenumber` ( `number` int(16) NOT NULL , PRIMARY KEY (`number`)) DEFAULT CHARSET=latin1 AUTO_INCREMENT=1", 1);
  20.     if (g_hDB == INVALID_HANDLE)
  21.     {
  22.         PrintToServer("Could not connect to MySQL Server : %s", sError);
  23.         CloseHandle(g_hDB);
  24.     }
  25.     else
  26.     {
  27.         PrintToServer("Connection Is Successful!");
  28.     }
  29.     RegAdminCmd("sm_storenumber", Command_StoreNumber, ADMFLAG_SLAY, "");
  30.     RegAdminCmd("sm_getnumber", Command_GetNumber, ADMFLAG_SLAY, "");
  31. }
  32.  
  33. public Action:Command_StoreNumber(client, args)
  34. {
  35.     decl String:sArg1[16];
  36.     GetCmdArg(1, sArg1, sizeof(sArg1));
  37.     new iNumber = StringToInt(sArg1);
  38.    
  39.     new String:sQuery[255];
  40.     Format(sQuery, sizeof(sQuery), "INSERT INTO storenumber (number) VALUES ('%i')", iNumber);
  41.     new Handle:hQuery = SQL_Query(g_hDB, sQuery);
  42.    
  43.     if(hQuery != INVALID_HANDLE)
  44.     {
  45.         ReplyToCommand(client, "Your number %i has been stored!", iNumber);
  46.         LogToFile("logs/storenumber.txt", "Number %i was stored by %N", iNumber, client);
  47.     }
  48.     return Plugin_Handled;
  49. }
  50.  
  51. public Action:Command_GetNumber(client, args)
  52. {
  53.     decl String:sQuery[255];
  54.     new iNumber;
  55.     Format(sQuery, sizeof(sQuery), "SELECT number FROM storenumber WHERE number=\"%i\"", iNumber);
  56.     new Handle:hQuery = SQL_Query(g_hDB, sQuery);
  57.     iNumber = SQL_FetchInt(hQuery, 1);
  58.     if(hQuery != INVALID_HANDLE)
  59.     {
  60.         ReplyToCommand(client, "Your number is %i!", iNumber);
  61.         LogToFile("logs/storenumber.txt", "Number %i was retrieved by %N", iNumber, client);
  62.     }
  63.     return Plugin_Handled;
  64. }
  65.  
  66.  
  67. public OnPluginEnd()
  68. {
  69.     CloseHandle(g_hDB);
  70. }
  71.  
  72. public SQLCallback_Void(Handle:hOwner, Handle:hHndl, const String:sError[], any:iData)
  73. {
  74.     if(hHndl == INVALID_HANDLE)
  75.     {
  76.         SetFailState("Error (%i): %s", iData, sError);
  77.     }
  78. }
Advertisement