[POMOC] mysql


Započeo Ciger, Septembar 26, 2016, 19:48:41 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: moja
Detaljan opis problema: sad posle 2 godien vracam se u samp svet i odlucio pocet novi mod cisto zbog drugara i zajebancije i sad imam problem koristim mysql i uradio sam reg log sistem i kad se konektujem uporno mi izbacuje logine nece reg ne znam u cemu je problem
Dio skripte:Cela skripta
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//===========================================================================================================================//
//===========================================================================================================================//
//=====================================================[ Ciger RP/DM Gamemode ]==============================================//
//=========================================================[ Version: 0.0.1 ]================================================//
//===========================================================================================================================//
//===========================================================================================================================//
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//============================================================================//
//                            Gamemode Informations                           //
//============================================================================//

//============================================================================//
//                                 Include                                    //
//============================================================================//
#include <a_samp>
#include <a_mysql>
#include <zcmd>
#include <sscanf2>

//============================================================================//
//                                 Forwards                                   //
//============================================================================//

//

//============================================================================//
//                                 Defines                                    //
//============================================================================//

#define SERVER_NAME                "[0.3 7] Ciger |ROLEPLAY| Mode: Normal"
#define SERVER_TIME                "12:00"
#define SERVER_GRAVITY             "0.00800"
#define SERVER_MAP                 "Los Santos"
#define SERVER_WEATHER             "2"
#define SERVER_WEBSITE             "www.balkan-samp.com"

#define DATABASE_HOST              "localhost"
#define DATABASE_USER              "root"
#define DATABASE_PASS              ""
#define DATABASE_DB                "baza"

#define Red                        "{FF0000}"
#define Orange                     "{FF6600}"
#define Blue                       "{0066FF}"
#define Green                      "{009900}"
#define Yellow                     "{FFFF00}"
#define White                      "{FFFFFF}"
#define Purple                     "{FF0066}"

#define Red1                       0xFF0000FF
#define Orange1                    0xFF6600FF
#define Blue1                      0x0066FFFF
#define Green1                     0x009900FF
#define Yellow1                    0xFFFF00FF
#define White1                     0xFFFFFFFF
#define Purple1                    0xFF0066FF

#define DIALOG_LOGIN               1
#define DIALOG_REGISTER            2
//============================================================================//
//                                   Enums                                    //
//============================================================================//
enum pInfo {
	pScore,
	pMoney,
	pAdmin
}
new PlayerInfo[MAX_PLAYERS][pInfo];
new Logged[MAX_PLAYERS];
////////////////////////////////////////////////////////////////////////////////
main()
{
	print("\nGamemode Informations");
	print("-----------------------");
	print("Gamemode - By: Ciger");
	print("  www.balkan-samp.com\n\n");
	print("Loading Gamemode");
	print("----------------");
}
////////////////////////////////////////////////////////////////////////////////
public OnGameModeInit()
{
    //========================================================================//
	//                           Server Informations                          //
	//========================================================================//

	new stuff[64];
	format(stuff, sizeof(stuff), "hostname %s", SERVER_NAME);
	SendRconCommand(stuff);
	format(stuff, sizeof(stuff), "mapname %s", SERVER_MAP);
	SendRconCommand(stuff);
	format(stuff, sizeof(stuff), "weather %s", SERVER_WEATHER);
	SendRconCommand(stuff);
	format(stuff, sizeof(stuff), "weburl %s", SERVER_WEBSITE);
	SendRconCommand(stuff);
	format(stuff, sizeof(stuff), "worldtime %s", SERVER_TIME);
	SendRconCommand(stuff);
	SetGameModeText("[RP] Version 0.0.1");

	//========================================================================//
	//                               MySQL Part                               //
	//========================================================================//

	new mysql = mysql_connect( DATABASE_HOST, DATABASE_USER, DATABASE_DB, DATABASE_PASS );
	mysql_debug(1);
	if(mysql_ping(mysql)) print ("Povezivanje sa databazom USPESNO!");
	if(!mysql_ping(mysql)) print ("Povezivanje sa databazom NEUSPESNO!");
	return 1;
}
////////////////////////////////////////////////////////////////////////////////
public OnGameModeExit()
{
	return 1;
}
////////////////////////////////////////////////////////////////////////////////
public OnPlayerRequestClass(playerid, classid)
{
	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)
{
	Logged[playerid] = 0;
	new Query[125], FinalName[24];
	mysql_real_escape_string(PlayerName(playerid), FinalName);
	format(Query, sizeof(Query), "SELECT * FROM `Users` WHERE `Username` = '%s'", FinalName);
	mysql_query(Query);
	mysql_store_result();
	if(mysql_num_rows() != 0)
	{
	    ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Login", "Unesite lozinku da se ulogujete", "U redu", "Cancel");
	}
	else
	{
	    ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Registracija", "Unesite lozinku za reigstraciju", "U redu", "Cancel");
	}
	return 1;
}
////////////////////////////////////////////////////////////////////////////////
public OnPlayerDisconnect(playerid, reason)
{
	return 1;
}
////////////////////////////////////////////////////////////////////////////////
public OnPlayerSpawn(playerid)
{
	return 1;
}
////////////////////////////////////////////////////////////////////////////////
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	if(dialogid == DIALOG_LOGIN)
	{
	    if(response)
	    {
	        new Query[125], FinalName[24];
			mysql_real_escape_string(PlayerName(playerid), FinalName);
			format(Query, sizeof(Query), "SELECT * FROM `Users` WHERE `Username` = '%s' AND `Password` = '%s'", FinalName, inputtext);
			mysql_query(Query);
			mysql_store_result();
			if(!mysql_num_rows())
			{
			    SendClientMessage(playerid, Orange1, "Lozinka netacna, pokusajte ponovo!");
			    ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Login", "Unesite lozinku da se ulogujete", "U redu", "Cancel");
			}
			else
			{
			    LoadAccount(playerid);
			    Logged[playerid] = 1;
			    SpawnPlayer(playerid);
			}
	    }
		else
		{
		    Kick(playerid);
		}
	}
	if(dialogid == DIALOG_REGISTER)
	{
	    if(response)
	    {
	        new Query[200], FinalName[24];
	        mysql_real_escape_string(PlayerName(playerid), FinalName);
	        if(!strlen(inputtext))
	        {
	            SendClientMessage(playerid, Orange1, "Morate uneti lozinku za registraciju!");
	            ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Registracija", "Unesite lozinku za reigstraciju", "U redu", "Cancel");
	        }
	        else if(strlen(inputtext) <=3 || strlen(inputtext) > 30)
	        {
	            SendClientMessage(playerid, Orange1, "Lozinka mora imati najmanje 4 znaka a najvise 30!");
	            ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Registracija", "Unesite lozinku za reigstraciju", "U redu", "Cancel");
	        }
	        format(Query, sizeof(Query), "INSERT INTO `Users` (`Username`, `Password`, `Score`, `Money`, `Admin`) VALUES ('%s', '%s', '1', '5000', '0')", FinalName, inputtext);
	        mysql_query(Query);

	        PlayerInfo[playerid][pAdmin] = 0;
			GivePlayerMoney(playerid, 5000);
			SetPlayerScore(playerid, 1);
	        SpawnPlayer(playerid);
	    }
	    else
	    {
	        Kick(playerid);
	    }
	}
	return 1;
}
//============================================================================//
//                                Commands                                    //
//============================================================================//

//

//============================================================================//
//                                 Stocks                                     //
//============================================================================//

stock PlayerName(playerid)
{
	new name[24];
	GetPlayerName(playerid, name, 24);
	return name;
}

stock SaveAccount(playerid)
{
	if(Logged[playerid] == 1)
	{
		PlayerInfo[playerid][pScore] = GetPlayerScore(playerid);
		PlayerInfo[playerid][pMoney] = GetPlayerMoney(playerid);

		new Query[1024], FinalName[24];
		mysql_real_escape_string(PlayerName(playerid), FinalName);
		format(Query, sizeof(Query), "UPDATE `Users` SET `Score` = '%d', `Money` = '%d', `Admin` = '%d' WHERE `Username` = '%s'", PlayerInfo[playerid][pScore], PlayerInfo[playerid][pMoney], PlayerInfo[playerid][pAdmin], FinalName);
		mysql_query(Query);
	}
}

stock LoadAccount(playerid)
{
    new Query[125], FinalName[24];
    mysql_real_escape_string(PlayerName(playerid), FinalName);
    format(Query, sizeof(Query), "SELECT * FROM `Users` WHERE `Username` = '%s'", FinalName);
	mysql_query(Query);
	mysql_store_result();
	if(mysql_retrieve_row())
	{
		new GetString[50];
 		mysql_fetch_field_row(GetString,"Score");  PlayerInfo[playerid][pScore] = strval(GetString);
  		mysql_fetch_field_row(GetString,"Money");  PlayerInfo[playerid][pMoney] = strval(GetString);
   		mysql_fetch_field_row(GetString,"Admin");  PlayerInfo[playerid][pAdmin] = strval(GetString);

   		GivePlayerMoney(playerid, PlayerInfo[playerid][pMoney]);
		SetPlayerScore(playerid, PlayerInfo[playerid][pScore]);
	}
}

Neke slike/video za lakse dobivanje pomoci(neobavezno):
Poslednja Izmena: Septembar 26, 2016, 19:54:06 POSLE PODNE od Kroni

Zasto koristis stari MySql.
Uzmes BlueG i cijepas
mysql_format(connection, query, sizeof query, "SELECT * FROM `Users` WHERE `Username`='%e' LIMIT 1", FinalName);
mysql_tquery(connectiom, query, "OnAccountCheck", "i", playerid);

pod OnAccountCheck
static rows, fields;
cache_get_data(rows, fields, connection);
if (!rows) // acc ne postoji
else // postoji
Poslednja Izmena: Septembar 26, 2016, 20:19:07 POSLE PODNE od ☢ χυηdєя_ ☢

Kazem vracam se posle 2 godine i onako sam pre radio tako da nisam u toku desavanja

Gdje bi nas svijet bio kada niko ne bi prelazio na nove stvari. Kameno doba? - DA :)
To je isto kao sto je npr Microsoft ugasio support za WXP, tako ce i svi uskoro za te out-date SAMP plugine/includove...