Jump to content

Problema MYSQL


Recommended Posts

Am si eu o problema la baza de date mysql.

Am setat cuiva admin nivel 1,dupa aceea am dat restart la server pentru ca am facut niste modificari,iar cand m-am uitat in baza de date nivelul adminului acelui jucator era 0,nu 1.

Aceasta este partea din gamemode pentru mysql:

//------------------------------------------------------------------
            //MySQL INSERT
            //------------------------------------------------------------------
			format(rQuery, 4096, "INSERT INTO `Accounts` (`ID`, `Name`, `Password`, `IP`, `E-Mail`, `LoggedIn`, `RegisterDate`, `LastOn`, `Level`, `VIP`, `Cash`, `Score`, `Coins`, `Credits`, \
											  `Headshots`, `Kills`, `Deaths`, `Hours`, `Minutes`, `Seconds`, `BestKillings`, `KillingSpree`, `FavSkin`, `UseSkin`, `House`, `Property`, \
											  `Description1`, `Description2`, `Description3`, `Positive`, `Negative`, `ClanID`, `ClanRank`, `ClanPoints`, `ClanKills`, `ClanDeaths`,");
			//------------------------------------------------------------------
			format(rQuery, 4096, "%s `Kicks`, `Bans`, `Jails`, `Warns`, `ClearChats`, `ReactionTest`, `MathTest`, `Mutes`, `Jailed`, `JailTime`, `Frozen`, `FreezeTime`, `Muted`, `MuteTime`, \
											  `RaceScore`, `StuntScore`, `DriftScore`, `GangID`, `GangRank`, `GangSkin`, `GangKills`, `GangDeaths`, `GangWarns`, `GangCaptures`, `GangPoints`, \
											  `Ignores`, `LottoNumber`, `C4`, `StatsNote`, `VIPTime`, `FreeVIP`, `TempVIP`, `RLSClan`, `RLSRank`, `AdmWarns`, `VIPWarns`, `KickW`)", rQuery);
			//------------------------------------------------------------------
			format(rQuery, 4096, "%s VALUES (0, '%s', '%s', '%s', '[email protected]', '1', '%02d/%02d/%02d', '%02d/%02d/%02d', \
											'0', '0', '25000', '100', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '217', '1', '0', '0', \
											' ', ' ', ' ', '0', '0', '0', '0', '0', '0', '0', \
											'0', '0', '0', '0', '0', '0', '0', '0', '0', '00:00', '0', '00:00', '0', '00:00', \
											'0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', \
											'0/0/0/0', '0', '0', '0', '0', '1', '0', '0', '0', '0', '0', '0')", rQuery, PlayerName(playerid), rPassword, GetPlayerIPEx(playerid), liDay, liMonth, liYear, liDay, liMonth, liYear);
			//------------------------------------------------------------------
			mysql_tquery(DB_Connect, rQuery, "OnAccountCreated", "i", playerid);
			//------------------------------------------------------------------

iar acesta este mysql.log:

<html><head><title>MySQL Plugin log</title><style>table {border: 1px solid black; border-collapse: collapse; line-height: 23px; table-layout: fixed; width: 863px;}th, td {border: 1px solid black; word-wrap: break-word;}thead {background-color: #C0C0C0;}		tbody {text-align: center;}		table.left1 {position: relative; left: 36px;}		table.left2 {position: relative; left: 72px;}		.time {width: 80px;}		.func {width: 200px;}		.stat {width: 75px;}		.msg {width: 400px;}	</style>	<script>		var 			LOG_ERROR = 1,			LOG_WARNING = 2,			LOG_DEBUG = 4;				var			FirstRun = true,			IsCallbackActive = false,			IsTableOpen = false,			IsThreadActive = false;				function StartCB(cbname) {			StartTable(1, 0, cbname);		}		function EndCB() {			EndTable();			IsCallbackActive = false;		}		function StartTable(iscallback, isthreaded, cbname) {			if(IsTableOpen == true || isthreaded != IsThreadActive)				EndTable();						if(iscallback == true) {				document.write(					"<table class=left2>" +						"<th bgcolor=#C0C0C0 >In callback \""+cbname+"\"</th>" +					"</table>"				);			}						document.write("<table");			if(iscallback == true || (isthreaded != IsThreadActive && isthreaded == false && IsCallbackActive == true) ) {				document.write(" class=left2");				IsCallbackActive = true;			}			else if(isthreaded == true) 				document.write(" class=left1");						IsThreadActive = isthreaded;			document.write(">");						if(FirstRun == true) {				FirstRun = false;				document.write("<thead><th class=time>Time</th><th class=func>Function</th><th class=stat>Status</th><th class=msg>Message</th></thead>");			}			document.write("<tbody>");			IsTableOpen = true;		}				function EndTable() {			document.write("</tbody></table>");			IsTableOpen = false;		}						function Log(time, func, status, msg, isthreaded) {			isthreaded = typeof isthreaded !== 'undefined' ? isthreaded : 0;			if(IsTableOpen == false || isthreaded != IsThreadActive)				StartTable(false, isthreaded, "");			var StatColor, StatText;			switch(status) {			case LOG_ERROR:				StatColor = "RED";				StatText = "ERROR";				break;			case LOG_WARNING:				StatColor = "#FF9900";				StatText = "WARNING";				break;			case LOG_DEBUG:				StatColor = "#00DD00";				StatText = "OK";				break;			}			document.write(				"<tr bgcolor="+StatColor+">" + 					"<td class=time>"+time+"</td>" + 					"<td class=func>"+func+"</td>" + 					"<td class=stat>"+StatText+"</td>" + 					"<td class=msg>"+msg+"</td>" + 				"</tr>"			);		}	</script></head><body bgcolor=grey>	<h2>Logging started at 20:13, 14.06.2015</h2><script>
Log("20:14:18","CMySQLQuery::Execute[OnAccountCreated]",1,"(error #1054) Unknown column 'RLSRank' in 'field list'",1);
Log("20:14:29","CMySQLQuery::Execute[]",1,"(error #1054) Unknown column 'RLSRank' in 'field list'",1);
Log("20:14:30","CMySQLQuery::Execute[OnAccountCreated]",1,"(error #1054) Unknown column 'RLSRank' in 'field list'",1);
</script>

Coloana RLSRank o am create in accounts,nu stiu de ce imi da aceasta eroare.

PS:Luati-ma mai usor,sunt incepator in pawno/mysql

Edited by lordhell12
Link to comment
Share on other sites

Arata-mi OnPlayerDisconnect

{
    foreach(new i: Player) OnPlayerDisconnect(i, 1);
    //--------------------------------------------------------------------------
	new ls_Query[1024];
	//--------------------------------------------------------------------------
	for (new i = 1; i < MAX_GANGS; i++)
	{
	    format(ls_Query, sizeof(ls_Query), "UPDATE `GangTers` SET `GangTerOwner` = '%d' WHERE `ID` = '%d'", Teritories[i][owner], i);
	    mysql_tquery(DB_Connect, ls_Query, "", "");
	}
	//--------------------------------------------------------------------------
	OnUpdate(); mysql_close(DB_Connect);
	//--------------------------------------------------------------------------
	return 1;
}

 

Link to comment
Share on other sites

Serios? Arata-mi si server_log

MySQL: Connection to '127.0.0.1' established.
[19:14:00] MySQL: Database 'port_2524' selected.


[20:23:12] [connection] 82.***.**.**:2521 requests connection cookie.
[20:23:13] Incoming connection: 82.***.**.**:2521 id: 0
[20:23:14] [join] LordH3ll has joined the server (0:82.***.**.**)
[20:24:36] [part] LordH3ll has left the server (0:1)

 

Edited by lordhell12
Link to comment
Share on other sites

Arata-mi tot server_log..

----------
Loaded log file: "server_log.txt".
----------

SA-MP Dedicated Server
----------------------
v0.3.7, (C)2005-2015 SA-MP Team

[19:13:58] password = ""  (string)
[19:13:58] 
[19:13:58] Server Plugins
[19:13:58] --------------
[19:13:58]  Loading plugin: crashdetect.so
[19:13:58]   CrashDetect v4.15.1 is OK.
[19:13:58]   Loaded.
[19:13:58]  Loading plugin: sscanf.so
[19:13:58] 

[19:13:58]  ===============================

[19:13:58]       sscanf plugin loaded.     

[19:13:58]          Version:  2.8.1        

[19:13:58]    (c) 2012 Alex "Y_Less" Cole  

[19:13:58]  ===============================

[19:13:58]   Loaded.
[19:13:58]  Loading plugin: mysql.so
[19:13:58]  >> plugin.mysql: R39-2 successfully loaded.
[19:13:58]   Loaded.
[19:13:58]  Loading plugin: streamer.so
[19:13:58] 

*** Streamer Plugin v2.7.5.2 by Incognito loaded ***

[19:13:58]   Loaded.
[19:13:58]  Loading plugin: irc.so
[19:13:58] 

*** IRC Plugin v1.4.6 by Incognito loaded ***

[19:13:58]   Loaded.
[19:13:58]  Loaded 5 plugins.

[19:13:58] 
[19:13:58] Filterscripts
[19:13:58] ---------------
[19:13:58]   Loading filterscript 'UltraHost.amx'...
[19:13:58]   Loading filterscript 'streamergangs.amx'...
[19:13:58]   Loading filterscript 'antiadv.amx'...
[19:13:58]   Loading filterscript 'irc.amx'...
[19:13:59]   Loading filterscript 'streamermaps.amx'...
[19:13:59]   Loading filterscript 'adminchat.amx'...
[19:13:59] -----------------------------
[19:13:59] X - AdminChat By XtremeR Loaded !
[19:13:59] -----------------------------
[19:13:59]   Loaded 6 filterscripts.

[19:14:00] 17698 - Objects.
[19:14:00] |++++++++++++++++++++++++++++++++++++|
[19:14:00] |------------------------------------|
[19:14:00] |>    Red Line Stunt - V3      <|
[19:14:00] |------------------------------------|
[19:14:00] |>          Loading...              <|
[19:14:00] |------------------------------------|
[19:14:00] |++++++++++++++++++++++++++++++++++++|
[19:14:00] 
MySQL: Connection to '127.0.0.1' established.
[19:14:00] MySQL: Database 'port_2524' selected.

[19:14:00] Number of vehicle models: 0
[19:14:00] 
Loaded 7 Gangs.
[19:14:00] Loaded 7 Gang Teritories.
[19:14:00] Loaded 7 Gang Checkpoints.
[19:14:00] Loaded 97 Properties.
[19:14:00] Loaded 1133 Houses.
[19:14:00] Loaded 28 Personal Vehicles.
[19:14:20] *** IRC_OnConnect: Bot ID 1 connected to 167.114.118.***:6667
[19:14:35] *** IRC_OnConnect: Bot ID 2 connected to 198.27.121.***:6667
[20:23:12] [connection] 82.137.14.**:2521 requests connection cookie.
[20:23:13] Incoming connection: 82.137.14.**:2521 id: 0
[20:23:14] [join] LordH3ll has joined the server (0:82.137.14.**)
[20:24:36] [part] LordH3ll has left the server (0:1)

 

Edited by lordhell12
Link to comment
Share on other sites

Arata functia de mai jos te rog :

OnUpdate()
{
    foreach(new i: Player) OnPlayerDisconnect(i, 1);
    //--------------------------------------------------------------------------
    new ls_Query[1024];
    //--------------------------------------------------------------------------
    for (new i = 1; i < MAX_GANGS; i++)
    {
        format(ls_Query, sizeof(ls_Query), "UPDATE `GangTers` SET `GangTerOwner` = '%d' WHERE `ID` = '%d'", Teritories[owner], i);
        mysql_tquery(DB_Connect, ls_Query, "", "");
    }
    //--------------------------------------------------------------------------
    OnUpdate(); mysql_close(DB_Connect);
    //--------------------------------------------------------------------------
    return 1;
}

Am mai multe functii OnUpdate(),le am la diferite comenzi,de exemplu cand adaug un membru in gang sau cand schimb numele la gang,aceasta este prima functie de jos,dupa cum ai spus.

Edited by lordhell12
Link to comment
Share on other sites

Cauta "public OnPlayerDisconnect" si da-mi codul de acolo.

public OnPlayerDisconnect(playerid, reason)
{
	eQuery[0] = EOS; eString[0] = EOS;
	//--------------------------------------------------------------------------
	if(PlayerInfo[playerid][LoggedIn] == 1) SavePlayer(playerid);
    if(PlayerInfo[playerid][pCar] != -1) CarDeleter(PlayerInfo[playerid][pCar]);
    if(PlayersInSoccer() == 0) ResetBallPosition();
    //--------------------------------------------------------------------------
    SendDisconnect(playerid, reason);
    //--------------------------------------------------------------------------

Cred ca ti-am dat ce nu ai cerut,dar nu am stiut unde sa ma opresc.

Link to comment
Share on other sites

Mi-ai dat ce trebuia. Acum, cauta "public SavePlayer" sau "stock SavePlayer" si da-mi codul de acolo.

SavePlayer(playerid)
{
	new h, m, s, szYear, szMonth, szDay;
	//--------------------------------------------------------------------------
	TotalGameTime(playerid, h, m, s);
	//--------------------------------------------------------------------------
	getdate(szYear, szMonth, szDay);
	//--------------------------------------------------------------------------
	eString[0] = EOS; eQuery[0] = EOS;
	//--------------------------------------------------------------------------
	format(eString, sizeof(eString), "UPDATE `Accounts` SET `LoggedIn` = 0, `LastOn` = '%02d/%02d/%02d', `Level` = '%d', `VIP` = '%d', `Cash` = '%d', `Score` = '%d', Coins = '%d', `Credits` = '%d', `Headshots` = '%d', `Kills` = '%d', `Deaths` = '%d', `Hours` = '%d', `Minutes` = '%d', `Seconds` = '%d', `BestKillings` = '%d', `KillingSpree` = '%d'", szDay, szMonth, szYear, PlayerInfo[playerid][Level], PlayerInfo[playerid][pVIP], GetPlayerMoney(playerid), GetPlayerScore(playerid), PlayerInfo[playerid][Coins], PlayerInfo[playerid][Credits], PlayerInfo[playerid][Headshots], PlayerInfo[playerid][Kills], PlayerInfo[playerid][Deaths], h, m, s, PlayerInfo[playerid][BestKillingSpree], PlayerInfo[playerid][KillingSpree]);
	//--------------------------------------------------------------------------
	format(eString, sizeof(eString), "%s, `FavSkin` = '%d', `UseSkin` = '%d', `House` = '%d', `Property` = '%d', `Description1` = '%s', `Description2` = '%s', `Description3` = '%s', `Positive` = '%d', `Negative` = '%d', `ClanID` = '%d', `ClanRank` = '%d', `ClanPoints` = '%d', `ClanKills` = '%d', `ClanDeaths` = '%d'", eString, PlayerInfo[playerid][FavSkin], PlayerInfo[playerid][UseSkin], PlayerInfo[playerid][House], PlayerInfo[playerid][Property], PlayerInfo[playerid][DLine1], PlayerInfo[playerid][DLine2], PlayerInfo[playerid][DLine3], PlayerInfo[playerid][PosRespect], PlayerInfo[playerid][NegRespect], PlayerInfo[playerid][ClanID], PlayerInfo[playerid][ClanRank], PlayerInfo[playerid][ClanPoints], PlayerInfo[playerid][ClanKills], PlayerInfo[playerid][ClanDeaths]);
    //--------------------------------------------------------------------------
	format(eString, sizeof(eString), "%s, `Kicks` = '%d', `Bans` = '%d', `Jails` = '%d', `Warns` = '%d', `ClearChats` = '%d', `ReactionTest` = '%d', `MathTest` = '%d', `Mutes` = '%d', `Jailed` = '%d', `JailTime` = '%d:%d', `Frozen` = '%d', `FreezeTime` = '%d:%d', `Muted` = '%d', `MuteTime` = '%d:%d'", eString, PlayerInfo[playerid][PKicks], PlayerInfo[playerid][PBans], PlayerInfo[playerid][PJails], PlayerInfo[playerid][PWarns], PlayerInfo[playerid][PClearCH], PlayerInfo[playerid][PReactions], PlayerInfo[playerid][PMaths], PlayerInfo[playerid][PMutes], PlayerInfo[playerid][Jailed], gTime[playerid][0], gTime[playerid][1], PlayerInfo[playerid][Frozen], fTime[playerid][0], fTime[playerid][1], PlayerInfo[playerid][Muted], mTime[playerid][0], mTime[playerid][1]);
    //--------------------------------------------------------------------------
	format(eString, sizeof(eString), "%s, `RaceScore` = '%d', `StuntScore` = '%d', `DriftScore` = '%d', `Ignores` = '%d/%d/%d/%d', `AdmWarns` = '%d', `VIPWarns` = '%d', `KickW` = '%d', `LottoNumber` = '%d', `C4` = '%d', `StatsNote` = '%d', `FreeVIP` = '%d', `TempVIP` = '%d', `RLSClan` = '%d', `RLSRank` = '%d'", eString, PlayerInfo[playerid][RacePoints], PlayerInfo[playerid][StuntPoints], PlayerInfo[playerid][DriftPoints], PlayerInfo[playerid][Ignore_PM], PlayerInfo[playerid][Ignore_Goto], PlayerInfo[playerid][Ignore_Get], PlayerInfo[playerid][Ignore_Spec], PlayerInfo[playerid][AdmW], PlayerInfo[playerid][VIPW], PlayerInfo[playerid][KickW], PlayerInfo[playerid][LottoNumber], PlayerInfo[playerid][C4], GiveNote(playerid), PlayerInfo[playerid][IsVipFree], PlayerInfo[playerid][TVip], PlayerInfo[playerid][RLSClan], PlayerInfo[playerid][RLSRank]);
    //--------------------------------------------------------------------------
	format(eString, sizeof(eString), "%s, `GangID` = '%d', `GangRank` = '%d', `GangSkin` = '%d', `GangKills` = '%d', `GangDeaths` = '%d', `GangWarns` = '%d', `GangCaptures` = '%d', `GangPoints` = '%d' WHERE `ID` = '%d'", eString, PlayerInfo[playerid][GangID], PlayerInfo[playerid][g_Rank], PlayerInfo[playerid][g_Skin], PlayerInfo[playerid][g_Kills], PlayerInfo[playerid][g_Deaths], PlayerInfo[playerid][g_Warns], PlayerInfo[playerid][g_Captures], PlayerInfo[playerid][g_Points], PlayerInfo[playerid][AccID]);
	//--------------------------------------------------------------------------
	mysql_tquery(DB_Connect, eString, "", "");
	//--------------------------------------------------------------------------
	if(PlayerInfo[playerid][Property] != 0)
	{
	    new p_owner = PlayerInfo[playerid][Property];
 		//----------------------------------------------------------------------
	    format(eQuery, 512, "UPDATE `Properties` SET `PropOwner` = '%s', `PropName` = '%s' WHERE `ID` = '%d'", PlayerName(playerid), PlayerName(playerid), p_owner);
	    mysql_tquery(DB_Connect, eQuery, "", "");
	}
	if(PlayerInfo[playerid][House] !=0)
	{
		new h_owner = PlayerInfo[playerid][House];
		//----------------------------------------------------------------------
		format(eQuery, sizeof(eQuery), "UPDATE `Houses` SET `HouseName` = '%s', `HouseInterior` = '%d', `HouseLocked` = '%d', `HouseIntX` = '%.2f', `HouseIntY` = '%.2f', `HouseIntZ` = '%.2f' WHERE `ID` = '%d' ", HouseInfo[h_owner][Name], HouseInfo[h_owner][Interior], HouseInfo[h_owner][Locked], HouseInfo[h_owner][InteriorX], HouseInfo[h_owner][InteriorY], HouseInfo[h_owner][InteriorZ], h_owner);
		mysql_tquery(DB_Connect, eQuery, "", "");
	}
	return 1;
}

Doar SavePlayer simplu am,fara public sau stock,sper ca acesta este.

Link to comment
Share on other sites

Cum ai definit in enumul jucatorilor definit rankul de admin ? Ar trebui sa fie ceva de genul pAdmin. Da-mi o comanda pe care numai un admin o poate folosi.

Link to comment
Share on other sites

Cum ai definit in enumul jucatorilor definit rankul de admin ? Ar trebui sa fie ceva de genul pAdmin. Da-mi o comanda pe care numai un admin o poate folosi.

if(PlayerInfo[playerid][Level] < 3) return SendError(playerid, "You need to be Admin Level 3 to use this command!");

 

Link to comment
Share on other sites

  • WopsS locked this topic
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.