CMD:register(playerid, params[]) {
new sscanfinput[128];
if(sscanf(params, "s[64]", string)) return SendClientMessage(playerid, COLOR_PURPLE, "<> /register (password)");
if(strlen(sscanfinput) > 64) return SendClientMessage(playerid, COLOR_PURPLE, "Only 64 characters allowed.");
// Open slot.
return 1;
}
GetPlayerName(playerid, sscanfinput, 24);
format(sscanfinput, 128, "SELECT * Account_Table_Name WHERE Username = '%s'", sscanfinput);
mysql_query(sscanfinput); // This function runs a MySQL query.
mysql_store_result(); // This function stores the result from a SELECT query.
if(mysql_num_rows()) { // This function checks how much rows are from a SELECT query.
mysql_free_result(); // This function releases the stored result.
SendClientMessage(playerid, COLOR_PURPLE, "Your account does exist!");
return 1;
}
mysql_free_result();
// Further coding.
CMD:register(playerid, params[]) {
new sscanfinput[64], string[128];
if(sscanf(params, "s[64]", sscanfinput)) return SendClientMessage(playerid, COLOR_PURPLE, "<> /register (password)");
if(strlen(sscanfinput) > 64) return SendClientMessage(playerid, COLOR_PURPLE, "Only 64 characters allowed.");
new name[24];
GetPlayerName(playerid, name, 24);
format(string, 128, "SELECT * Account_Table_Name WHERE Username = '%s'", name);
mysql_query(string); // This function runs a MySQL query.
mysql_store_result(); // This function stores the result from a SELECT query.
if(mysql_num_rows()) { // This function checks how much rows are from a SELECT query.
mysql_free_result(); // This function releases the stored result.
SendClientMessage(playerid, COLOR_PURPLE, "Your account does exist!");
return 1;
}
mysql_free_result();
// Further coding.
return 1;
}
new Escape[2][128];
mysql_real_escape_string(name, Escape[0]); // This function makes sure you don't get MySQL injected. Read about it by searching it on ******.
mysql_real_escape_string(sscanfinput, Escape[1]);
format(string, 128, "INSERT INTO Account_Table_Name (Username, Password) VALUES('%s', md5('%s'))", Escape[0], Escape[1]);
mysql_query(string);
To insert data into MySQL table you would need to use SQL INSERT INTO command. You can insert data into MySQL table by using mysql> prompt or by using any script like PHP. Here is generic SQL syntax of INSERT INTO command to insert data into MySQL table: PHP код:
|
new Escape[2][128];
mysql_real_escape_string(name, Escape[0]); // This function makes sure you don't get MySQL injected. Read about it by searching it on ******.
mysql_real_escape_string(sscanfinput, Escape[1]);
format(string, 128, "INSERT INTO Account_Table_Name (Username, Password, Faction, Rank) VALUES('%s', md5('%s'), 999, 999)", Escape[0], Escape[1]);
mysql_query(string);
CMD:login(playerid, params[]) {
new sscanfinput[64], string[128];
if(sscanf(params, "s[64]", string)) return SendClientMessage(playerid, COLOR_PURPLE, "<> /register (password)");
// Open slot.
return 1;
}
new name[24],
Escape[2][128];
GetPlayerName(playerid, name, 24);
mysql_real_escape_string(name, Escape[0]); // This function makes sure you don't get MySQL injected. Read about it by searching it on ******.
mysql_real_escape_string(sscanfinput, Escape[1]);
format(string, 128, "SELECT * FROM Account_Table_Name WHERE Username = '%s' AND Password = md5('%s')", Escape[0], Escape[1]);
mysql_query(string);
mysql_store_result();
if(!mysql_num_rows()) {
mysql_free_result();
SendClientMessage(playerid, COLOR_PURPLE, "Your password is wrong or your account doesn't exist.");
return 1;
}
SendClientMessage(playerid, COLOR_PURPLE, "You're logged in.");
// Login code here.
mysql_free_result();
new Data[80], MyPassword[64], MyUserName[24], MyAdminLevel;
mysql_fetch_row_format(Data, "|");
sscanf(Data, "p<|>s[24]s[64]i", MyPassword, MyUserName, MyAdminLevel);
stock explode(aExplode[][], const sSource[], const sDelimiter[] = " ", iVertices = sizeof aExplode, iLength = sizeof aExplode[])
{
new
iNode,
iPointer,
iPrevious = -1,
iDelimiter = strlen(sDelimiter);
while(iNode < iVertices)
{
iPointer = strfind(sSource, sDelimiter, false, iPointer);
if(iPointer == -1)
{
strmid(aExplode[iNode], sSource, iPrevious, strlen(sSource), iLength);
break;
}
else
{
strmid(aExplode[iNode], sSource, iPrevious, iPointer, iLength);
}
iPrevious = (iPointer += iDelimiter);
++iNode;
}
return iPrevious;
}
new Data[80], ExplodeSplit[3][100], MyPassword[64], MyUserName[24], MyAdminLevel;
mysql_fetch_row_format(Data, "|");
explode(ExplodeSplit, Data, "|");
strmid(MyUserName, ExplodeSplit[0], 0, strlen(ExplodeSplit[0]), 255); // https://sampwiki.blast.hk/wiki/Strmid
strmid(MyPassword, ExplodeSplit[1], 0, strlen(ExplodeSplit[1]), 255);
MyAdminLevel = strval(ExplodeSplit[2]);
CMD:login(playerid, params[]) {
new sscanfinput[64], string[128];
if(sscanf(params, "s[64]", string)) return SendClientMessage(playerid, COLOR_PURPLE, "<> /register (password)");
new name[24],
Escape[2][128];
GetPlayerName(playerid, name, 24);
mysql_real_escape_string(name, Escape[0]); // This function makes sure you don't get MySQL injected. Read about it by searching it on ******.
mysql_real_escape_string(sscanfinput, Escape[1]);
format(string, 128, "SELECT * FROM Account_Table_Name WHERE Username = '%s' AND Password = md5('%s')", Escape[0], Escape[1]);
mysql_query(string);
mysql_store_result();
if(!mysql_num_rows()) {
mysql_free_result();
SendClientMessage(playerid, COLOR_PURPLE, "Your password is wrong or your account doesn't exist.");
return 1;
}
SendClientMessage(playerid, COLOR_PURPLE, "You're logged in.");
new Data[80], MyPassword[64], MyUserName[24], MyAdminLevel;
mysql_fetch_row_format(Data, "|");
sscanf(Data, "p<|>s[24]s[64]i", MyPassword, MyUserName, MyAdminLevel);
mysql_free_result();
return 1;
}
CMD:login(playerid, params[]) {
new sscanfinput[64], string[128];
if(sscanf(params, "s[64]", string)) return SendClientMessage(playerid, COLOR_PURPLE, "<> /register (password)");
new name[24],
Escape[2][128];
GetPlayerName(playerid, name, 24);
mysql_real_escape_string(name, Escape[0]); // This function makes sure you don't get MySQL injected. Read about it by searching it on ******.
mysql_real_escape_string(sscanfinput, Escape[1]);
format(string, 128, "SELECT * FROM Account_Table_Name WHERE Username = '%s' AND Password = md5('%s')", Escape[0], Escape[1]);
mysql_query(string);
mysql_store_result();
if(!mysql_num_rows()) {
mysql_free_result();
SendClientMessage(playerid, COLOR_PURPLE, "Your password is wrong or your account doesn't exist.");
return 1;
}
SendClientMessage(playerid, COLOR_PURPLE, "You're logged in.");
new Data[80], ExplodeSplit[3][100], MyPassword[64], MyUserName[24], MyAdminLevel;
mysql_fetch_row_format(Data, "|");
explode(ExplodeSplit, Data, "|");
strmid(MyUserName, ExplodeSplit[0], 0, strlen(ExplodeSplit[0]), 255); // https://sampwiki.blast.hk/wiki/Strmid
strmid(MyPassword, ExplodeSplit[1], 0, strlen(ExplodeSplit[1]), 255);
MyAdminLevel = strval(ExplodeSplit[2]);
mysql_free_result();
return 1;
}
new bool: LoggedIn[MAX_PLAYERS];
CMD:login(playerid, params[]) {
if(LoggedIn[playerid]==true) return SendClientMessage(playerid, COLOR_PURPLE, "You're logged in already.");
// Code.
}
UPDATE table_name
SET column1=value, column2=value2,... etc.
WHERE some_column=some_value
mysql_query("UPDATE People SET Cheese='Sucks' WHERE Cheese= 'Rocks'");
format(string, 128, "UPDATE Account_Table_Name SET AdminLevel=%i, Money=%i WHERE Username = '%s", MyAdminLevel, MyMoney, name);
mysql_query(string);