Jump to content
  • 0

pomoc Problém s MySQL...


Jakub Kučera

Dotaz

Čau, zkouším si udělat vlastní script pro svůj účel... Jedná se o skript, který by měl při připojení zapsat a po odpojení smazat z databáze Jméno uživatele. No bohužel to při připojení nefunguje... Ale když pak zapíšu do db manuálně a odpojím se, tak to smaže...

Tak opravdu nevím, čím to je...

public OnPlayerConnect(playerid)
{
	CreateOnline(playerid);
	return 1;
}

a

public OnPlayerDisconnect(playerid, reason)
{
    CreateOffline(playerid);
    return 1;
}

Tu jsou stocky

stock CreateOnline(playerid)
{
    new PlayerName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, PlayerName, MAX_PLAYER_NAME);
    new query[256];
    format(query, sizeof(query), "INSERT INTO `online` (`Nick`) VALUES ('%s')", PlayerName);
    mysql_query(query);
    return true;
}
stock CreateOffline(playerid)
{
    new PlayerName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, PlayerName, MAX_PLAYER_NAME);
    new query[256];
    format(query, sizeof(query), "DELETE FROM `online` WHERE `Nick` = '%s'", PlayerName);
    mysql_query(query);
    return true;
}
Link to comment
Share on other sites

6 odpovědí na tuto otázku

Recommended Posts

  • 0

Kod vypadá OK, ale pokud v té tabulce connect nemáš jen Nick, tak v tom insertu zkus připsat i ten zbytek co máš v tabulce. Popřípadě si ten connect vypiš do konzole jestli se posílá správný dotaz.

Link to comment
Share on other sites

  • 0

No já mám právě v tabulce jen Nick....Nevím proč to nefunguje, registrace mi takhle funguje v pohodě...

 

HibK.png

//Edit

Když to printnu, tak to napíše tohle [11:18:57] [join] Expertik has joined the server (0:79.110.36.16) [11:18:57] INSERT INTO `online` (`Nick`) VALUES ('Expertik') [11:22:13] [part] Expertik has left the server (0:1)

Edited by Expertik
Link to comment
Share on other sites

  • 0

Chybu nevidím. Pokud nespouštíš jinej mod než upravuješ tak nevím co děláš blbě. Plugin, includ OK?

zkus do OnGameModeInit jestli něco bude fungovat

mysql_query("CREATE TABLE IF NOT EXISTS abcd(`Nick` VARCHAR(255) NOT NULL)");
mysql_query("INSERT INTO `abcd` (`Nick`) VALUES ('123456')");
Link to comment
Share on other sites

  • 0
  • Administrátor

Opravdu 255 ? Opravdu ?


Opravdu 255 ? Opravdu ?

 

 

BTW používat mysql v sampu je kravina zvlášt pro takovouhle věc. 

Jde to mnohem jednodušeji a bez pluginů

Link to comment
Share on other sites

  • 0

Díky už jsem to vyřešil... Stačilo to přendat z OnPlayerConnect do OnPlayerSpawn a ošetřit to, aby to nezapisovalo hráče znovu, pokud už tam je...

Link to comment
Share on other sites

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