Jump to content
  • 0

Problema MySQL


EleMenTalL

Question

Salut, am si eu o problema cu mysql, pot face 2 useri cu exact acelasi nume...

iar dupa ce ma inregistrez nu imi apare fereastra de login..

daca ies de pe server si intru iar imi zice ca nu sunt inregistrat si imi fac alt cont, care culmea, se salveaza si ala in DB...

Cred ca este problema din GM, nu din DB...

public OnPlayerLogin(playerid,password[]) // by EleMenTal • Version 1.1 •
{
	MySQLCheckConnection();
	new tmp2[256];
    new string2[64];
	new playername2[MAX_PLAYER_NAME];
	new playernamesplit[3][MAX_PLAYER_NAME];
    GetPlayerName(playerid, playername2, sizeof(playername2));
	split(playername2, playernamesplit, '_');
	MySQLFetchAcctSingle(PlayerInfo[playerid][pSQLID], "Password", PlayerInfo[playerid][pKey]);
	if(strcmp(PlayerInfo[playerid][pKey],password, true ) == 0 )
	{
		new Data[1024];
		new Field[64];
		new rcnt = 1;
		MySQLFetchAcctRecord(PlayerInfo[playerid][pSQLID], Data);
		samp_mysql_strtok(Field, "|", Data);
		while (samp_mysql_strtok(Field, "|", "")==1)
		{
			// The rcnt values here represent the order of the columns in the characters table, so don't mess with them
			// If you add a column to the table, just add a new line with a +1 rcnt to the block below
			// Start it at 3 to skip the first few records we don't need (id, player name, password)
			if (rcnt == 3) PlayerInfo[playerid][pLevel] = strval(Field);
			if (rcnt == 4) PlayerInfo[playerid][pAdmin] = strval(Field);
			if (rcnt == 5) PlayerInfo[playerid][pDonateRank] = strval(Field);
			if (rcnt == 6) PlayerInfo[playerid][gPupgrade] = strval(Field);
			if (rcnt == 7) PlayerInfo[playerid][pConnectTime] = strval(Field);
			if (rcnt == 8) PlayerInfo[playerid][pReg] = strval(Field);
			if (rcnt == 9) PlayerInfo[playerid][pSex] = strval(Field);
			if (rcnt == 10) PlayerInfo[playerid][pAge] = strval(Field);
			if (rcnt == 11) PlayerInfo[playerid][pOrigin] = strval(Field);
			if (rcnt == 12) PlayerInfo[playerid][pCK] = strval(Field);
			if (rcnt == 13) PlayerInfo[playerid][pMuted] = strval(Field);
			if (rcnt == 14) PlayerInfo[playerid][pExp] = strval(Field);
			if (rcnt == 15) PlayerInfo[playerid][pCash] = strval(Field);
			if (rcnt == 16) PlayerInfo[playerid][pAccount] = strval(Field);
			if (rcnt == 17) PlayerInfo[playerid][pCrimes] = strval(Field);
			if (rcnt == 18) PlayerInfo[playerid][pKills] = strval(Field);
			if (rcnt == 19) PlayerInfo[playerid][pDeaths] = strval(Field);
			if (rcnt == 20) PlayerInfo[playerid][pArrested] = strval(Field);
			if (rcnt == 21) PlayerInfo[playerid][pWantedDeaths] = strval(Field);
			if (rcnt == 22) PlayerInfo[playerid][pPhoneBook] = strval(Field);
			if (rcnt == 23) PlayerInfo[playerid][pLottoNr] = strval(Field);
			if (rcnt == 24) PlayerInfo[playerid][pFishes] = strval(Field);
			if (rcnt == 25) PlayerInfo[playerid][pBiggestFish] = strval(Field);
			if (rcnt == 26) PlayerInfo[playerid][pJob] = strval(Field);
			if (rcnt == 27) PlayerInfo[playerid][pPayCheck] = strval(Field);
			if (rcnt == 28) PlayerInfo[playerid][pHeadValue] = strval(Field);
			if (rcnt == 29) PlayerInfo[playerid][pJailed] = strval(Field);
			if (rcnt == 30) PlayerInfo[playerid][pJailTime] = strval(Field);
			if (rcnt == 31) PlayerInfo[playerid][pMats] = strval(Field);
			if (rcnt == 32) PlayerInfo[playerid][pDrugs] = strval(Field);
			if (rcnt == 33) PlayerInfo[playerid][pLeader] = strval(Field);
			if (rcnt == 34) PlayerInfo[playerid][pMember] = strval(Field);
			if (rcnt == 35) PlayerInfo[playerid][pFMember] = strval(Field);
			if (rcnt == 36) PlayerInfo[playerid][pRank] = strval(Field);
			if (rcnt == 37) PlayerInfo[playerid][pChar] = strval(Field);
			if (rcnt == 38) PlayerInfo[playerid][pContractTime] = strval(Field);
			if (rcnt == 39) PlayerInfo[playerid][pDetSkill] = strval(Field);
			if (rcnt == 40) PlayerInfo[playerid][pSexSkill] = strval(Field);
			if (rcnt == 41) PlayerInfo[playerid][pBoxSkill] = strval(Field);
			if (rcnt == 42) PlayerInfo[playerid][pLawSkill] = strval(Field);
			if (rcnt == 43) PlayerInfo[playerid][pMechSkill] = strval(Field);
			if (rcnt == 44) PlayerInfo[playerid][pJackSkill] = strval(Field);
			if (rcnt == 45) PlayerInfo[playerid][pCarSkill] = strval(Field);
			if (rcnt == 46) PlayerInfo[playerid][pNewsSkill] = strval(Field);
			if (rcnt == 47) PlayerInfo[playerid][pDrugsSkill] = strval(Field);
			if (rcnt == 48) PlayerInfo[playerid][pCookSkill] = strval(Field);
			if (rcnt == 49) PlayerInfo[playerid][pFishSkill] = strval(Field);
			if (rcnt == 50) PlayerInfo[playerid][pSHealth] = floatstr(Field);
			if (rcnt == 51) PlayerInfo[playerid][pHealth] = floatstr(Field);
			if (rcnt == 52) PlayerInfo[playerid][pInt] = strval(Field);
			if (rcnt == 53) PlayerInfo[playerid][pLocal] = strval(Field);
			if (rcnt == 54) PlayerInfo[playerid][pTeam] = strval(Field);
			if (rcnt == 55) PlayerInfo[playerid][pModel] = strval(Field);
			if (rcnt == 56) PlayerInfo[playerid][pPnumber] = strval(Field);
			if (rcnt == 57) PlayerInfo[playerid][pPhousekey] = strval(Field);
			if (rcnt == 58) PlayerInfo[playerid][pPcarkey] = strval(Field);
			if (rcnt == 59) PlayerInfo[playerid][pPbiskey] = strval(Field);
			if (rcnt == 60) PlayerInfo[playerid][pPos_x] = floatstr(Field);
			if (rcnt == 61) PlayerInfo[playerid][pPos_y] = floatstr(Field);
			if (rcnt == 62) PlayerInfo[playerid][pPos_z] = floatstr(Field);
			if (rcnt == 63) PlayerInfo[playerid][pCarLic] = strval(Field);
			if (rcnt == 64) PlayerInfo[playerid][pFlyLic] = strval(Field);
			if (rcnt == 65) PlayerInfo[playerid][pBoatLic] = strval(Field);
			if (rcnt == 66) PlayerInfo[playerid][pFishLic] = strval(Field);
			if (rcnt == 67) PlayerInfo[playerid][pGunLic] = strval(Field);
			if (rcnt == 68) PlayerInfo[playerid][pGun1] = strval(Field);
			if (rcnt == 69) PlayerInfo[playerid][pGun2] = strval(Field);
			if (rcnt == 70) PlayerInfo[playerid][pGun3] = strval(Field);
			if (rcnt == 71) PlayerInfo[playerid][pGun4] = strval(Field);
			if (rcnt == 72) PlayerInfo[playerid][pAmmo1] = strval(Field);
			if (rcnt == 73) PlayerInfo[playerid][pAmmo2] = strval(Field);
			if (rcnt == 74) PlayerInfo[playerid][pAmmo3] = strval(Field);
			if (rcnt == 75) PlayerInfo[playerid][pAmmo4] = strval(Field);
			if (rcnt == 76) PlayerInfo[playerid][pCarTime] = strval(Field);
			if (rcnt == 77) PlayerInfo[playerid][pPayDay] = strval(Field);
			if (rcnt == 78) PlayerInfo[playerid][pPayDayHad] = strval(Field);
			if (rcnt == 79) PlayerInfo[playerid][pWatch] = strval(Field);
			if (rcnt == 80) PlayerInfo[playerid][pCrashed] = strval(Field);
			if (rcnt == 81) PlayerInfo[playerid][pWins] = strval(Field);
			if (rcnt == 82) PlayerInfo[playerid][pLoses] = strval(Field);
			if (rcnt == 83) PlayerInfo[playerid][pAlcoholPerk] = strval(Field);
			if (rcnt == 84) PlayerInfo[playerid][pDrugPerk] = strval(Field);
			if (rcnt == 85) PlayerInfo[playerid][pMiserPerk] = strval(Field);
			if (rcnt == 86) PlayerInfo[playerid][pPainPerk] = strval(Field);
			if (rcnt == 87) PlayerInfo[playerid][pTraderPerk] = strval(Field);
			if (rcnt == 88) PlayerInfo[playerid][pTut] = strval(Field);
			if (rcnt == 89) PlayerInfo[playerid][pMissionNr] = strval(Field);
			if (rcnt == 90) PlayerInfo[playerid][pWarns] = strval(Field);
			if (rcnt == 91) PlayerInfo[playerid][pVirWorld] = strval(Field);
			if (rcnt == 92) PlayerInfo[playerid][pFuel] = strval(Field);
			if (rcnt == 93) PlayerInfo[playerid][pMarried] = strval(Field);
			if (rcnt == 94) PlayerInfo[playerid][pMarriedTo] = strmid(PlayerInfo[playerid][pMarriedTo], Field, 0, strlen(Field)-1, 255);
			if (rcnt == 95) PlayerInfo[playerid][pLocked] = strval(Field);
			rcnt++;
		}
//		samp_mysql_free_result();
	}

	else
	{
		SendClientMessage(playerid, COLOR_WHITE, "SERVER: Password does not match your name.");
		//fclose(UserFile);
		gPlayerLogTries[playerid] += 1;
		if(gPlayerLogTries[playerid] == 4) { Ban(playerid); }
		return 1;
	}
	ResetPlayerCash(playerid);
	//ConsumingMoney[playerid] = 1;
	//CurrentMoney[playerid] = PlayerInfo[playerid][pCash];
	GivePlayerCash(playerid,PlayerInfo[playerid][pCash]);

	if(PlayerInfo[playerid][pReg] == 0)
	{
		PlayerInfo[playerid][pLevel] = 1;
		PlayerInfo[playerid][pSHealth] = 110.0;
		PlayerInfo[playerid][pHealth] = 100.0;
		PlayerInfo[playerid][pPos_x] = 1612.3240;
		PlayerInfo[playerid][pPos_y] = -2330.1670;
		PlayerInfo[playerid][pPos_z] = 13.5469;
		PlayerInfo[playerid][pInt] = 0;
		PlayerInfo[playerid][pLocal] = 255;
		PlayerInfo[playerid][pTeam] = 3;
		PlayerInfo[playerid][pModel] = 135;
		new randphone = 100000 + random(899999);//minimum 1000  max 9999 //giving one at the start
		PlayerInfo[playerid][pPnumber] = randphone;
		PlayerInfo[playerid][pPhousekey] = 255;
		PlayerInfo[playerid][pPcarkey] = 999;
		PlayerInfo[playerid][pPbiskey] = 255;
		PlayerInfo[playerid][pAccount] = 0;
		PlayerInfo[playerid][pReg] = 1;
		GivePlayerCash(playerid, 300);
	}
	if(PlayerInfo[playerid][pLevel] == -999) //autoban
	{
		Ban(playerid);
	}
	else if(PlayerInfo[playerid][pCK] > 0)
	{
		Kick(playerid);
	}

	// Add an entry to the login log
	new ipaddress[16];
	GetPlayerIp(playerid,ipaddress,sizeof(ipaddress));
	MySQLAddLoginRecord(PlayerInfo[playerid][pSQLID], ipaddress);

	ClearChatbox(playerid, 8);
	format(string2, sizeof(string2), "Welcome to Star Gaming Roleplay, %s.",playernamesplit[0]);
	SendClientMessage(playerid, COLOR_YELLOW2, string2);
	SendClientMessage(playerid, COLOR_WHITE, "MOTD: New server release (1.0 beta)");
	SendClientMessage(playerid, COLOR_YELLOW2, "Script has been improved by EleMenTal");
	SendClientMessage(playerid, COLOR_WHITE, " ");
	printf("%s has logged in.",playername2);
	if (PlayerInfo[playerid][pDonateRank] > 0)
	{
		SendClientMessage(playerid, COLOR_WHITE,"People of LS: Thank you for donating so we can live!");
	}
	if (PlayerInfo[playerid][pAdmin] > 0)
	{
		format(string2, sizeof(string2), "SERVER: You are logged in as a Level %d Admin.",PlayerInfo[playerid][pAdmin]);
		SendClientMessage(playerid, COLOR_WHITE,string2);
	}

    // Reset the FirstSpawn variable
	SetTimerEx("UnsetFirstSpawn", 5000, false, "i", playerid);

	// Set pCrashed variable
	SetTimerEx("SetCrashed", 5000, false, "i", playerid);

	SetSpawnInfo(playerid, PlayerInfo[playerid][pTeam], PlayerInfo[playerid][pModel], PlayerInfo[playerid][pPos_x], PlayerInfo[playerid][pPos_y], PlayerInfo[playerid][pPos_z], 1.0, -1, -1, -1, -1, -1, -1);
	if(gTeam[playerid] == 0)
	{
		gTeam[playerid] = 3;
	}
	else
	{
		gTeam[playerid] = PlayerInfo[playerid][pTeam];
	}
	gPlayerLogged[playerid] = 1;
	SpawnPlayer(playerid);
	if(PlayerInfo[playerid][pCrashed] == 0)
	{
		format(tmp2, sizeof(tmp2), "~w~Welcome ~n~~y~   %s", playername2);
	}
	else
	{
	    format(tmp2, sizeof(tmp2), "~p~crashed...~n~~w~returning where you been");
	}
	DateProp(playerid);
	GameTextForPlayer(playerid, tmp2, 5000, 1);
	//SendClientMessage(playerid, COLOR_YELLOW, motd);
	if(PlayerInfo[playerid][pFMember] < 255)
	{
		format(tmp2, sizeof(tmp2), "Family MOTD: %s.", FamilyInfo[PlayerInfo[playerid][pFMember]][FamilyMOTD]);
		SendClientMessage(playerid, COLOR_YELLOW, tmp2);
	}
	for(new i = 0; i < MAX_PLAYERS; i++)
	{
	   	if(IsPlayerConnected(i))
	   	{
	       	if(PlayerInfo[i][pMaskuse] == 1)
	       	{
	           	ShowPlayerNameTagForPlayer(playerid, i, 0);
	       	}
	   	}
	}
	//}
	return 1;
}

Pur si simplu nu-mi apare casuta respectiva...

Link to comment
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.