29.01.2017, 15:23
Hey guys, how can I check if the player entered an email? I want to restrict a field to emails so they can't type random things.
"{s[256]'@'s[256]'.'s[256]}"
"{s[256]'@'s[256]'.'s[256]}"
if(!sscanf(inputtext, "{s[256]'@'s[256]'.'s[256]}"))
{
// the email is valid depends on those patterns...
}
IsValidEmail(text[]) // It will return true if text[] is a valid email, it will return false otherwise.
{
return !sscanf(text, "{s[256]'@'s[256]'.'s[256]}");
}
|
Код:
if(!sscanf(inputtext, "{s[256]'@'s[256]'.'s[256]}"))
{
// the email is valid depends on those patterns...
}
Код:
IsValidEmail(text[]) // It will return true if text[] is a valid email, it will return false otherwise.
{
return !sscanf(text, "{s[256]'@'s[256]'.'s[256]}");
}
|
case DIALOG_EMAIL:
{
if(response)
{
if(!sscanf(inputtext, "{s[256]'@'s[256]'.'s[256]}"))
{
ShowPlayerDialog(playerid, DIALOG_EMAIL, DIALOG_STYLE_INPUT, "{FFA500}E-MAIL", "{FFFFFF}Please enter your email below:\n\n", "NEXT", "");
}
else
{
new DB_Query[225];
new pName[24];
GetPlayerName(playerid, pName, sizeof(pName));
format(PlayerInfo[playerid][pEmail],64, "%s", inputtext);
mysql_format(Database, DB_Query, sizeof(DB_Query), "UPDATE `USERS` SET `email` = '%e' WHERE `USERNAME` = '%e'"
, PlayerInfo[playerid][pEmail], pName);
mysql_tquery(Database, DB_Query);
SendClientMessage(playerid, COLOR_GREEN, "Email set succesfully! Moving onto the next part, gender!");
ShowPlayerDialog(playerid, DIALOG_SEX, DIALOG_STYLE_MSGBOX, "{FFA500}GENDER", "{FFFFFF}Are you a boy or a girl?\n\n", "BOY", "GIRL");
}
}
}
|
It doesn't work, it continues to the next dialog even if I type a normal email or not.
Код:
case DIALOG_EMAIL:
{
if(response)
{
if(!sscanf(inputtext, "{s[256]'@'s[256]'.'s[256]}"))
{
ShowPlayerDialog(playerid, DIALOG_EMAIL, DIALOG_STYLE_INPUT, "{FFA500}E-MAIL", "{FFFFFF}Please enter your email below:\n\n", "NEXT", "");
}
else
{
new DB_Query[225];
new pName[24];
GetPlayerName(playerid, pName, sizeof(pName));
format(PlayerInfo[playerid][pEmail],64, "%s", inputtext);
mysql_format(Database, DB_Query, sizeof(DB_Query), "UPDATE `USERS` SET `email` = '%e' WHERE `USERNAME` = '%e'"
, PlayerInfo[playerid][pEmail], pName);
mysql_tquery(Database, DB_Query);
SendClientMessage(playerid, COLOR_GREEN, "Email set succesfully! Moving onto the next part, gender!");
ShowPlayerDialog(playerid, DIALOG_SEX, DIALOG_STYLE_MSGBOX, "{FFA500}GENDER", "{FFFFFF}Are you a boy or a girl?\n\n", "BOY", "GIRL");
}
}
}
|
sscanf(inputtext, "?<SSCANF_QUIET=1>{s[256]'@'s[256]'.'s[256]}")