[Ajuda] Mysql
#4

Aн o

Foto:http://imgur.com/a/dhs3r

Код:
#include <a_samp>
#include <a_mysql>
 
eu queria o de winrace dinheiro score 

enum {
	DIALOG_REGISTER,
	DIALOG_LOGIN
}

forward jig_OnPlayerConnect(playerid);
forward jig_OnPlayerLogin(playerid);

new
	jDB,
	jString[256],
	jName[MAX_PLAYERS][24],
	bool:jLogged[MAX_PLAYERS],
	jTries[MAX_PLAYERS]
;

public OnFilterScriptInit() {
	jDB = mysql_connect("localhost", "root", "jigRegister", "123");
	if(mysql_ping(jDB) < 1)
	    return SendRconCommand("unloadfs jigRegister");

	print("Connected!");
	mysql_function_query(jDB, "CREATE TABLE IF NOT EXISTS `jUsers` (`Name` VARCHAR(24) NOT NULL,`Password` VARCHAR(32) NOT NULL, `Skin` INT(11) NOT NULL DEFAULT '299',`Money` INT(11) NOT NULL DEFAULT '5000',`Score` INT(11) NOT NULL DEFAULT '0')", false, "", "");

	return 1;
}

public OnFilterScriptExit() {
	mysql_close(jDB);
	return 1;
}

public OnPlayerConnect(playerid) {
	jTries[playerid] = 0;
	GetPlayerName(playerid, jName[playerid], 24);

	mysql_format(jDB, jString, "SELECT * FROM `jUsers` WHERE `Name` = '%s'", jName[playerid]);
	mysql_function_query(jDB, jString, true, "jig_OnPlayerConnect", "i", playerid);
	return 1;
}

public jig_OnPlayerConnect(playerid) {
	new
		jRows,
		jFields
	;

	cache_get_data(jRows, jFields, jDB);
	if(!jRows) {
	    format(jString, sizeof(jString), "{FFFFFF}Olб {1E90FF}%s{FFFFFF}\nVocк ainda nгo й registrado no servidor.\nDigite uma senha para se registrar.", jName[playerid]);
	    ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "{FFFFFF}Registro", jString, "Registrar", "Cancelar");
	    return 1;
	}
	format(jString, sizeof(jString), "{FFFFFF}Olб denovo {1E90FF}%s{FFFFFF}\nDigite sua senha para fazer login no servidor.", jName[playerid]);
	ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "{FFFFFF}Login", jString, "Login", "Cancelar");
	return 1;
}

public OnPlayerDisconnect(playerid, reason) { 
    #pragma unused reason 
    if(jLogged[playerid]) { 
        mysql_format(jDB, jString, 
            "UPDATE `jUsers` SET WinRace = %d,`Skin` = %d, `Money` = %d, Score = %d WHERE `Name` = '%s'", 
 winsr[playerid], 
            GetPlayerSkin(playerid), 
            GetPlayerMoney(playerid), 
            GetPlayerScore(playerid), 
            jName[playerid] 
        ); 
        mysql_function_query(jDB, jString, false, "", ""); 
        jLogged[playerid] = false; 
    } 
    return 1; 
}  

public OnPlayerSpawn(playerid)
{
	return (jLogged[playerid]) ? (1) : (Kick(playerid));
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
	switch(dialogid) {
	    case DIALOG_REGISTER: {
	        if(!response)
	            Kick(playerid);

			else {
			    if(1 < strlen(inputtext) > 32) {
			        format(jString, sizeof(jString), "{FFFFFF}Olб {1E90FF}%s{FFFFFF}\nVocк ainda nгo й registrado no servidor.\nDigite uma senha para se registrar.\n\n{E31919}Erro: Sua senha deve conter entre 1 e 32 caracteres.", jName[playerid]);
	    			ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "{FFFFFF}Registro", jString, "Registrar", "Cancelar");
			    } else {
			        mysql_format(jDB, jString, "INSERT INTO `jUsers` (`Name`,`Password`) VALUES ('%s','%s')", jName[playerid], inputtext);
			        mysql_function_query(jDB, jString, false, "", "");

					format(jString, sizeof(jString), "{FFFFFF}Muito bem {1E90FF}%s{FFFFFF}\nConta registrada com sucesso.\nDigite sua senha para fazer login.", jName[playerid]);
					ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "{FFFFFF}Login", jString, "Login", "Cancelar");
			    }
			}
		}
		case DIALOG_LOGIN: {
			if(!response)
			    Kick(playerid);

			else {
			    mysql_format(jDB, jString, "SELECT * FROM `jUsers` WHERE `Name` = '%s' AND `Password` = '%s'", jName[playerid], inputtext);
			    mysql_function_query(jDB, jString, true, "jig_OnPlayerLogin", "i", playerid);
			}
		}
	}
	return 1;
}

public jig_OnPlayerLogin(playerid) { 
    new 
        jRows, 
        jFields 
    ; 

    cache_get_data(jRows, jFields, jDB); 
    if(!jRows) 
    { 
        ++ jTries[playerid]; 
        if(jTries[playerid] == 5) 
            return BanEx(playerid, "5 erros de senha"); 

        format(jString, sizeof(jString), "{FFFFFF}Senha incorreta {1E90FF}%s{FFFFFF}\nDigite sua verdadeira senha.\nChances: {E31919}%d", jName[playerid], (5 - jTries[playerid])); 
        ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "{FFFFFF}Login", jString, "Login", "Cancelar"); 
        return 1; 
    } 
    jLogged[playerid] = true; 
//Carregamento 
winsr[playerid] = cache_get_field_content_int(0,"WinRace ");  

    cache_get_field_content(0, "Money", jString, jDB); 
    ResetPlayerMoney(playerid); GivePlayerMoney(playerid, strval(jString)); 

    cache_get_field_content(0, "Score", jString, jDB); 
    SetPlayerScore(playerid, strval(jString)); 

    cache_get_field_content(0, "Skin", jString, jDB); 

    SetSpawnInfo(playerid, 0, strval(jString), 1568.2737, -1892.3541, 13.5595, 0.8003, 0, 0, 0, 0, 0, 0); 
    SpawnPlayer(playerid); 
    return 1; 
}
Reply


Messages In This Thread
Mysql - by Marllun - 15.11.2016, 07:18
Re: [Ajuda]Mysql - by Carlos001 - 15.11.2016, 11:33
Re: Mysql - by RiqueP - 15.11.2016, 15:59
Re: Mysql - by Marllun - 15.11.2016, 17:28
Re: Mysql - by Marllun - 15.11.2016, 18:10
Re: Mysql - by Cleyson - 15.11.2016, 18:16
Re: Mysql - by Marllun - 15.11.2016, 18:21
Re: Mysql - by Cleyson - 15.11.2016, 18:27
Re: Mysql - by Marllun - 15.11.2016, 19:31
Re: Mysql - by Marllun - 15.11.2016, 20:17

Forum Jump:


Users browsing this thread: 2 Guest(s)