- 0
De ce primesc erori cand este totul corect?
-
Similar Content
-
- 3 answers
- 379 views
-
Salut,imi apare asta cand pornesc serverul,dar eu am bagat acolo in server.cfg ce e nevoie,imi puteti spune va rog problema ?
By leoo671,
- 0 replies
- 490 views
-
Am si eu o problema cand intru pe un server imi spune ca am dat afar chiar daca intru cu un alt cont.
By nutu112,
- 1 answer
- 328 views
-
- 1 reply
- 231 views
-
erori
By YoungBlood,
- 1 answer
- 271 views
-
-
Recently Browsing 0 members
- No registered users viewing this page.
Question
thestafy
salut,am scris momentan logarea si registerul si tot primesc erori! Este dupa tutorialul lui Edison de login/register si nu inteleg,sunt deja 2 zile de cand ma chinui sa gasesc imperfectiunea! acesta este codul:
#include <a_samp>
#include <a_mysql>
new SQL = -1, gQuery[256], gString[256];
#define function%0(%1) forward %0(%1); public %0(%1)
#define SCM SendClientMessage
#define COLOR_DARKRED 0Xd80003FF
#define COLOR_NICEGREEN 0X8cc5edFF
new
incercariParola[MAX_PLAYERS];
enum pInfo {
pSQLID,
pName[MAX_PLAYER_NAME],
pPassword[32],
pEmail[32],
pGender
}
new PlayerInfo[MAX_PLAYERS][pInfo];
enum {
//REGISTER
DIALOG_REGISTER,
DIALOG_EMAIL,
DIALOG_GENDER,
//LOGIN
DIALOG_LOGIN
};
main() { print("Se initiaza gamemodeul..."); }
public OnGameModeInit()
{
SQL = mysql_connect("localhos", "root", "sv", "");
// Don`t use these lines if it`s a filterscript
SetGameModeText("gmv1.0");
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
TogglePlayerSpectating(playerid, false);
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
return 1;
}
public OnPlayerConnect(playerid){
incercariParola[playerid] = 0;
gQuery[0] = EOS;
mysql_format(SQL, gQuery, sizeof(gQuery), "SELECT * FROM `users` WHERE `Name` = `%s` LIMIT 1", GetName(playerid));
mysql_tquery(SQL, gQuery, "checkAccount" , "i" , playerid);
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
switch(dialogid) {
case DIALOG_REGISTER: {
if(!response)
return Kick(playerid);
if(strlen(inputtext) <4 || strlen(inputtext) > 32)
return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "Register", "Scrie o parola pentru a iti crea contul:", "Select", "Cancel");
gQuery[0] = EOS;
mysql_format(SQL, gQuery, sizeof(qQuery), "INSERT INTO `users` (`Name`, `Password`) VALUES (`%s` , `%s`)", GetName(playerid), inputtext);
mysql_tquery(SQL, gQuery, "insertAccount", "i" , playerid );
gString[0] = EOS;
format(gString, sizeof(gString), "Parola ta contine %d caractere." strlen(inputtext));
SCM(playerid, -1 , gString);
format(PlayerInfo[playerid][pPassword], 32 , inputtext);
ShowPlayerDialog(playerid, DIALOG_EMAIL, DIALOG_STYLE_INPUT, "EMAIL", "Te rugam sa-ti setezi adresa de email:", "Select", "Cancel");
}
case DIALOG_EMAIL: {
if(!response)
return Kick(playerid);
if(strlen(inputtext) <4 || strlen(inputtext) > 32)
return ShowPlayerDialog(playerid, DIALOG_EMAIL, DIALOG_STYLE_INPUT, "EMAIL", "Te rugam sa-ti setezi adresa de email:", "Select", "Cancel");
gQuery[0] = EOS;
mysql_format(SQL, gQuery, sizeof(qQuery), "UPDATE `Users` SET `Email = `%s` WHERE `ID` = `%d`" , inputtext, PlayerInfo[playerid][pSQLID]);
mysql_tquery(SQL, gQuery, "", "" );
gString[0] = EOS;
format(gString, sizeof(gString), "Email setat %s" strlen(inputtext));
SCM(playerid, -1 , gString);
format(PlayerInfo[playerid][pEmail], 32 , inputtext);
ShowPlayerDialog(playerid, DIALOG_GENDER, DIALOG_STYLE_MSGBOX, "GENDER", "Seteaza-ti sexul:", "Masculin", "Feminin");
}
case DIALOG_GENDER: {
switch(response) {
case 0: {
PlayerInfo[playerid][pGender] = 1;
SCM(playerid, -1, "Sexul ales este Feminin");
}
case 1: {
PlayerInfo[playerid][pGender] = 0;
SCM(playerid, -1, "Sexul ales este Masculin");
}
}
gQuery[0] = EOS;
mysql_format(SQL, gQuery, sizeof(qQuery), "UPDATE `Users` SET `Gender = `%d` WHERE `ID` = `%d`" , PlayerInfo[playerid][pGender], PlayerInfo[playerid][pSQLID]);
mysql_tquery(SQL, gQuery, "", "" );
SpawnPlayer(playerid);
}
case DIALOG_LOGIN: {
if(!response)
return Kick(playerid);
mysql_format(SQL, gQuery, sizeof(gQuery), "SELECT * FROM `users` WHERE Name` = `%s` AND `Password`=`%s` LIMIT 1" GetName(playerid)inputtext);
mysql_tquery(SQL, gQuery, "onlogin" , "i" , playerid);
}
}
return 1;
}
function onlogin (playerid) {
switch(cache_num_rows()) {
case 0: {
incercariParola[playerid] ++;
gString[0] = EOS;
format(gString, sizeof(gString),"Parola incorecta! (%d/3 incercari ramase)", incercariParola[playerid]);
SCM(palyerid, COLOR_DARKRED, gString);
if(incercariParola[playerid] == 3) Kick(playerid);
else ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Login", "Te rugam sa introduci parola contului tau:", "Select", "Cancel");
}
case 1: {
new
result[64];
PlayerInfo[playerid][pSQLID] = cache_get_row_content_int("0", "ID");
PlayerInfo[playerid][pGender] = cache_get_row_content_int("0", "Gender");
cache_get_field_content(0, "Name" , result); format(PLayerInfo[playerid][pName], MAX_PLAYER_NAME, result);
cache_get_field_content(0, "Password" , result); format(PLayerInfo[playerid][pPassword], 32, result);
cache_get_field_content(0, "Email" , result); format(PLayerInfo[playerid][pEmail], 32, result);
printf("%s (user: %d) s-a conectat. [Gender: %d, Name: %s, Password: %s, Email: %s]" , GetName(playerid), PlayerInfo[playerid][pSQLID], PlayerInfo[playerid][pGender],PlayerInfo[playerid][pPassword], PlayerInfo[palyerid][pEmail]);
for (new i = 0; i<25; i++) SCM(playerid, -1, " ");
SCM(palyerid, COLOR_NICEGREEN, "Bine ai venit/revenit pe server"
SpawnPlayer(playerid);
}
}
return 1;
}
function insertAccount(playerid) {
PlayerInfo[playerid][pSQLID] = cache_insert_id();
printf("%s s-a inregistrat cu SQLID-ul #%d." , GetName(playerid),PlayerInfo[playerid][pSQLID]);
return 1;
}
function checkAccount(playerid) {
switch(cache_num_rows()) {
case 0; ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "Register", "Scrie o parola pentru a iti crea contul:", "Select", "Cancel");
case 1;ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Login", "Te rugam sa introduci parola contului tau:", "Select", "Cancel");
}
return 1;
}
stock GetName(playerid) {
new playerName[MAX_PALYER_NAME];
GetPlayerName(playerid, playerName, MAX_PLAYER_NAME);
return playerName;
}
Link to comment
Share on other sites
15 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.