new DB:database;
public OnGameModeInit()
{
/* Carrega o banco de dados */
database = db_open("bancodedados.db");
db_free_result(db_query(database, "CREATE TABLE IF NOT EXISTS contas (id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,nome TEXT NOT NULL,email TEXT NOT NULL,senha TEXT NOT NULL,admin INTEGER NOT NULL,skin INTEGER NOT NULL,px INTEGER NOT NULL,py INTEGER NOT NULL,pz INTEGER NOT NULL,pa INTEGER NOT NULL);"));
return 1;
}
case DIALOG_REGISTRO: {
if(response) {
new string[500];
if(!strlen(inputtext)) {
format(string, sizeof(string), "{FFFFFF}Seja bem-vindo(a) ao: {ffbc59}Guerra dos Mitos - MultiModo © | BILНNGUE | Venha!\n\n{FFFFFF}Status: {FF0000}Conta nгo registrada\n\n{FFFFFF}Nick: {FF0000}%s\n\n{ffbc59}* {FFFFFF}Insira uma senha para registrar sua conta! {ffbc59}*", GetPlayerNome(playerid));
ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_PASSWORD, "{ffbc59}Guerra dos Mitos - {FFFFFF}MultiModo", string, "Registrar", "Sair");
} else {
new query[300];
format(query, sizeof(query), "INSERT INTO contas (nome, senha, admin, skin, px, py, pz, pa) VALUES ('%s', '%s', '0', '0', '0.0', '0.0', '0.0', '0.0');", DB_Escape(GetPlayerNome(playerid)), DB_Escape(inputtext));
db_free_result(db_query(database, query));
pInfo[playerid][Admin] = 0;
pInfo[playerid][pRegistroNaoConcluido] = true;
format(pInfo[playerid][Senha], 20, "%s", inputtext);
format(string, sizeof(string), "{FFFFFF}Seja bem-vindo(a) ao: {ffbc59}Guerra dos Mitos - MultiModo © | BILНNGUE | Venha!\n\n{FFFFFF}Selecione '{4169E1}Masculino{FFFFFF}' ou '{DB7093}Feminino{ffffff}'\n\n{ffbc59}* {FFFFFF}Escolha uma das opзхes abaixo para definir sua sexualidade {ffbc59}*");
ShowPlayerDialog(playerid, DIALOG_SEXUALIDADE, DIALOG_STYLE_MSGBOX, "{ffbc59}Guerra dos Mitos - {FFFFFF}MultiModo", string, "Masculino", "Feminino");
return 1;
}
} else {
Kick(playerid);
}
return 1;
}
SavePlayer(playerid)
{
printf("Salvando o Player ID: %d", playerid);
new query[300], DBResult:Result;
GetPlayerPos(playerid, pInfo[playerid][px], pInfo[playerid][py], pInfo[playerid][pz]);
GetPlayerFacingAngle(playerid, pInfo[playerid][pa]);
format(query, sizeof(query), "UPDATE `contas` SET admin = '%d', email = '%s', senha = '%s', skin = '%d', px = '%f', py = '%f', pz = '%f', pa = '%f' WHERE `nome` = '%q'",
pInfo[playerid][Admin],
pInfo[playerid][Email],
pInfo[playerid][Senha],
pInfo[playerid][Skin],
pInfo[playerid][px],
pInfo[playerid][py],
pInfo[playerid][pz],
pInfo[playerid][pa],
DB_Escape(GetPlayerNome(playerid)));
Result = db_query(database, query);
db_free_result(Result);
return 1;
}
#define free_db_query(%0,%1) db_free_result(db_query(%0,%1))
CREATE TABLE IF NOT EXISTS contas ( id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, nome TEXT NOT NULL, email TEXT NOT NULL, senha TEXT NOT NULL, admin INTEGER NOT NULL, skin INTEGER NOT NULL, px INTEGER NOT NULL, py INTEGER NOT NULL, pz INTEGER NOT NULL, pa INTEGER NOT NULL );
INSERT INTO `contas` (`nome`, `senha`, `email`, `admin`, `skin`, `px`, `py`, `pz`, `pa`) VALUES ('Name', 'pass', 'test@provider.com', 0, 0, 0.0, 0.0, 0.0, 0.0);
Oi tudo bem?
Eu quebrei a sua query de criaзгo da tabela para ficar mais organizado, e executei os comandos utilizando o SQLITE online, https://sqliteonline.com/ (talvez te seja util tambйm.) O erro que estava dando era porque vocк criou um campo chamado `email` *NOT NULL* e vocк nгo estava utilizando ele na hora de fazer o *INSERT* Code:
CREATE TABLE IF NOT EXISTS contas ( id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, nome TEXT NOT NULL, email TEXT NOT NULL, senha TEXT NOT NULL, admin INTEGER NOT NULL, skin INTEGER NOT NULL, px INTEGER NOT NULL, py INTEGER NOT NULL, pz INTEGER NOT NULL, pa INTEGER NOT NULL ); Code:
INSERT INTO `contas` (`nome`, `senha`, `email`, `admin`, `skin`, `px`, `py`, `pz`, `pa`) VALUES ('Name', 'pass', 'test@provider.com', 0, 0, 0.0, 0.0, 0.0, 0.0); |
Obrigado pelo site me ajudou muito, referente aos cуdigos eu jб havia conseguido resolver devido eu ter teimoso e sempre nunca desistir kkk mais obrigado a todos. Estou migrando para o SQLITE devido a isto estou tendo esses problemas mas logo logo engrenamos.
E mais uma vez obrigado a todos ! |