[AJUDA] Sistema MySQL -
marcelodell - 19.01.2012
Boa Noite galera, estou tentando colocar na minha GM um sistema em MySQL, usei o tutorial do Ricop so pra criar o sistema de registro mesmo, mas estou com um pequeno problema mas que nгo consigo resolver!
Esta dando o seguinte erro:
pawn Код:
error 049: invalid line continuation
Segue o codigo com a linha com o problema:
pawn Код:
if(dialogid == 1)
{
if(!response)
{
return SendClientMessage(playerid, 0xFF0000, "You must login before you spawn!"),
ShowPlayerDialog(playerid, 15500, DIALOG_STYLE_INPUT, "Login","Vocк em que logar antes de jogar cara!!","Logar","Cancelar");
}
if(response) //Clicou em Login
{
new query[200], pname[128], escapepass[100]; //
new numrows = mysql_num_rows();
GetPlayerName(playerid, pname, 128);
mysql_real_escape_string(inputtext, escapepass); //Contra HACKERS! (RE: MySQL Injections
format(query, sizeof(query), "SELECT `Nome` FROM contas WHERE Nome = '%s' AND Senha = SHA1('%s')", pname, escapepass);
mysql_query(query);
mysql_store_result();
if(numrows == 1) MySQL_Login(playerid);
//senha do jogador e da database sгo iguais/\
if(!numrows)//ESTA E A LINHA COM O ERRO.
{
//senha errada
SendClientMessage(playerid, 0xFF0000, "Senha Incorreta!");
}
mysql_free_result(); //LEMBRE-SE DE DAR SEMPRE FREE RESULT PARA LIBERAR O QUERY;
}
}
Tentei substituir por Else If e if(numrows == 0) so para ver se funcionava, mas continuou o mesmo erro. Se alguem me ajudar eu ficaria muito agradecido!
Re: [AJUDA] Sistema MySQL -
Jason` - 19.01.2012
pawn Код:
if(numrows == 1)
{
MySQL_Login(playerid);
}
else
{
SendClientMessage(playerid, 0xFF0000, "Senha Incorreta!");
}
Tenta assim
Re: [AJUDA] Sistema MySQL -
marcelodell - 19.01.2012
Continua com o mesmo erro.
@EDIT
Tirei o codigo que estava dando erro so pra testar massss parece que o meu codigo esta endemoniado, mesmo tirando continua dando o mesmo erro na mesma linha '-'. Alguem tem ideia de que pode ser!
Re: [AJUDA] Sistema MySQL -
Jason` - 19.01.2012
pawn Код:
if(response) //Clicou em Login
{
new query[200], pname[128], escapepass[100]; //
new numrows = mysql_num_rows();
GetPlayerName(playerid, pname, 128);
mysql_real_escape_string(inputtext, escapepass); //Contra HACKERS! (RE: MySQL Injections
format(query, sizeof(query), "SELECT `Nome` FROM contas WHERE Nome = '%s' AND Senha = SHA1('%s')", pname, escapepass);
mysql_query(query);
mysql_store_result();
if(!numrows)//ESTA E A LINHA COM O ERRO.
{
//senha errada
SendClientMessage(playerid, 0xFF0000, "Senha Incorreta!");
return 1;
}
MySQL_Login(playerid);
mysql_free_result(); //LEMBRE-SE DE DAR SEMPRE FREE RESULT PARA LIBERAR O QUERY;
}
}
Tenta
Re: [AJUDA] Sistema MySQL -
marcelodell - 20.01.2012
Pedro, vlw, funcionou, + reputation pra vc ^^. Agora o problema e que o meu Login nao esta funcionando corretamente "NAO ESTA SALVANDO OS DADOS, QUANDO EU CONECTO, EU N ESTOU REGISTRADO, MAS FALA QUE ESTOU, DIGITO QUALQUER SENHA E VOLTA PARA A MESMA DIALOG DE LOGIN DNVO, ACREDITO QUE SEJA FACIL DE RESOLVER

"
Re: [AJUDA] Sistema MySQL -
Jason` - 20.01.2012
Posta ai a OnPlayerConnect
Re: [AJUDA] Sistema MySQL -
marcelodell - 20.01.2012
Esta e a parte da OnPlayerConnect relacionada ao sistema de Login em MySQL e onde eu acredito que esteja o problema:
pawn Код:
format(query,sizeof(query),"SELECT 'Nome' FROM 'contas' WHERE 'Nome' = '%s'",plname);
mysql_query(query);
mysql_store_result();
new rows = mysql_num_rows(); //Iremos getar quantas rows a query retornou.
if(!rows)
{
//Se a rows for 0, nгo encontrou nada
//Entгo iremos pedir o registro do jogador no banco de dados.
gPlayerConta[playerid] = 0;
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "{FFFF00}Registrar BPR","{33CCFF}******************************************\n{33FF00}Bem Vindo ao [BPR] Brasil Play Roleplay [BPR] \n{33FF00}Sua conta nao esta registrada! \n\n{33FF00}Por favor, registre-se!!\n{33CCFF}******************************************","Registrar","Cancelar");
}
if(rows) //SENГO
{
//Rows = 1 , existe na database
//AUTO LOGIN
GetPlayerName(playerid,plname,sizeof(plname));
mysql_fetch_field_row(plname,"Nome");
MySQL_Login(playerid);
gPlayerConta[playerid] = 0;
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "{FFFF00}Login BPR", "{33CCFF}******************************************\n{33FF00}Bem Vindo ao [BPR] Brasil Play Roleplay [BPR] \n{33FF00}Sua conta foi Registrada! \n\n{33FF00}Por favor logue na sua conta!!\n{33CCFF}******************************************", "Logar", "Sair");
pRegistrado[playerid] = 1; //Sets the registered variable to 1 (Shows that the player is registered).
}
mysql_free_result();
Re: [AJUDA] Sistema MySQL -
Jason` - 20.01.2012
pawn Код:
format(query,sizeof(query),"SELECT * FROM contas WHERE Nome = '%s'",plname);
Tenta colocar isso
Re: [AJUDA] Sistema MySQL -
marcelodell - 21.01.2012
Pedro, vlw pela ajuda, de fato era isso ai mesmo. Se eu puder te ajudar em alguma coisa e sу dizer ^^! Estava com alguns outros problemas de salvamento, mas ja resolvi, agora e so mudar parte por parte para salvar em MySQL ^^!
Re: [AJUDA] Sistema MySQL -
Ricop522 - 22.01.2012
Sу uma dica
pawn Код:
if(!rows)
{
//Se a rows for 0, nгo encontrou nada
//Entгo iremos pedir o registro do jogador no banco de dados.
gPlayerConta[playerid] = 0;
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "{FFFF00}Registrar BPR","{33CCFF}******************************************\n{33FF00}Bem Vindo ao [BPR] Brasil Play Roleplay [BPR] \n{33FF00}Sua conta nao esta registrada! \n\n{33FF00}Por favor, registre-se!!\n{33CCFF}******************************************","Registrar","Cancelar");
}
if(rows) //SENГO
{
//Rows = 1 , existe na database
//AUTO LOGIN
GetPlayerName(playerid,plname,sizeof(plname));
mysql_fetch_field_row(plname,"Nome");
MySQL_Login(playerid);
gPlayerConta[playerid] = 0;
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "{FFFF00}Login BPR", "{33CCFF}******************************************\n{33FF00}Bem Vindo ao [BPR] Brasil Play Roleplay [BPR] \n{33FF00}Sua conta foi Registrada! \n\n{33FF00}Por favor logue na sua conta!!\n{33CCFF}******************************************", "Logar", "Sair");
pRegistrado[playerid] = 1; //Sets the registered variable to 1 (Shows that the player is registered).
}
Nгo precisa ficar criando new rows = my.. й um new inutil
E nessa parte vocк nao precisa if(!rows) depois usar if(rows) usa else.
RE: senгo = else
if = se
else if = ou se
else = senгo