Jump to content
Autentificarea cu Google și Facebook nu mai este disponibilă. ×

Question

Posted

Salut, m am inspirat de pe acest forum de la o problema, cineva pusese aceasta comanda intr-un reply, si am zis sa o incerc si eu, chiar mi s a parut interesant.
ce face comanda ? Simplu, e o comanda de tip /updates, doar ca este dinamica, poti creea un update direct din joc, doar ca trebuie niste salvari in baza de date, iar eu nu ma prea pricep cu baza de date, ma poate ajuta si pe mine cineva la inserarea in tabelul updates din baza de date ? Cum sa pun alea cu INT si etc, astea sunt comenzile

CMD:updates(playerid, params[])
{
    new query[1000],versiune[128],updateid,vizionari,text[40][1000],rezultat[1000],query2[256],textafisare[2000],data[128], updateid2 = 0, updatetext[2000], updatedata[2000], updateversiune[2000];
    mysql_format(SQL, query, sizeof(query), "SELECT * FROM `updates` WHERE `ID` > '0'");
    new Cache: cache = mysql_query(SQL, query);
    if(cache_get_row_count() < 1) return SCM(playerid, COLOR_GREY, "Nu exista updateuri adaugate in lista.");
    for(new i, j = cache_get_row_count(); i != j; i++)
    {
        updateid = cache_get_field_content_int(i, "ID");
        vizionari = cache_get_field_content_int(i, "Vizionari");
        cache_get_field_content(i, "Versiune", rezultat); format(versiune, 128, rezultat);
        cache_get_field_content(i, "Data", rezultat); format(data, 128, rezultat);
        for(new a = 0; a < 40; a++)
        {
            format(query2, sizeof(query2), "Text%d",a);
            cache_get_field_content(i, query2,rezultat); format(text[a], 1000, rezultat);
            strcat(updatetext[a], text[a], 1000);
        }
        strcat(updatedata[updateid2], data, 128);
        strcat(updateversiune[updateid2], versiune, 128);
        updateid2++;
        if(updateid == 1) format(textafisare, sizeof(textafisare), "{0066FF}ID\t{FFFFFF}Versiune\t{0066FF}Data\t{FFFFFF}Vizionari\n{FFFFFF}Update {0066FF}# %d\t{FFFFFF}%s\t{0066FF}%s{FFFFFF}\t%d",updateid, versiune,data, vizionari);
        if(updateid > 1) format(textafisare, sizeof(textafisare), "%s\n{FFFFFF}Update {0066FF}# %d\t{FFFFFF}%s\t{0066FF}%s{FFFFFF}\t%d",textafisare,updateid,versiune,data, vizionari);
    }
    ShowPlayerDialog(playerid, DIALOG_UPDATES, DIALOG_STYLE_TABLIST_HEADERS, "SERVER: Updates", textafisare, "Seleteaza","Anuleaza");
    cache_delete(cache);
    return 1;
}
CMD:au(playerid, params[])
{
    if(PlayerInfo[playerid][pAdmin] >= 7)
    {
        new versiune[128],data[128],query[1000];
        if(sscanf(params, "s[128]", versiune)) return SCM(playerid, -1, "USAGE: /addupdate [nume versiune]");
        new year, month,day;
        getdate(year, month, day);
        format(data, sizeof(data), "%02d.%02d.%d",day,month,year);
        mysql_format(SQL, query, sizeof(query), "INSERT INTO `updates` (`Versiune`,`Data`) VALUES ('%s','%s')",versiune,data);
        mysql_tquery(SQL, query, "", "");
        SCM(playerid, -1, "{0066FF}UPDATE: {FFFFFF}Versiunea a fos adaugata cu succes.");
    }
    return 1;
}
CMD:aul(playerid, params[])
{
    if(PlayerInfo[playerid][pAdmin] >= 7)
    {
        new versiune[512],query[1000],linie,id;
        if(sscanf(params, "iis[128]", linie,id,versiune)) return SCM(playerid, -1, "USAGE: /addupdateline [linie (0-40)] [id] [descriere]");
        mysql_format(SQL, query, sizeof(query), "UPDATE `updates` SET `Text%d`='%s' WHERE `ID`='%d'",linie,versiune,id);
        mysql_tquery(SQL, query, "", "");
        SCM(playerid, -1, "{0066FF}UPDATE: {FFFFFF}Linia a fos adaugata cu succes.");
    }
    return 1;
}

9 answers to this question

Recommended Posts

  • 0
Posted
Acum 8 minute, Maddo a spus:

Salut, m am inspirat de pe acest forum de la o problema, cineva pusese aceasta comanda intr-un reply, si am zis sa o incerc si eu, chiar mi s a parut interesant.
ce face comanda ? Simplu, e o comanda de tip /updates, doar ca este dinamica, poti creea un update direct din joc, doar ca trebuie niste salvari in baza de date, iar eu nu ma prea pricep cu baza de date, ma poate ajuta si pe mine cineva la inserarea in tabelul updates din baza de date ? Cum sa pun alea cu INT si etc, astea sunt comenzile

CMD:updates(playerid, params[])
{
    new query[1000],versiune[128],updateid,vizionari,text[40][1000],rezultat[1000],query2[256],textafisare[2000],data[128], updateid2 = 0, updatetext[2000], updatedata[2000], updateversiune[2000];
    mysql_format(SQL, query, sizeof(query), "SELECT * FROM `updates` WHERE `ID` > '0'");
    new Cache: cache = mysql_query(SQL, query);
    if(cache_get_row_count() < 1) return SCM(playerid, COLOR_GREY, "Nu exista updateuri adaugate in lista.");
    for(new i, j = cache_get_row_count(); i != j; i++)
    {
        updateid = cache_get_field_content_int(i, "ID");
        vizionari = cache_get_field_content_int(i, "Vizionari");
        cache_get_field_content(i, "Versiune", rezultat); format(versiune, 128, rezultat);
        cache_get_field_content(i, "Data", rezultat); format(data, 128, rezultat);
        for(new a = 0; a < 40; a++)
        {
            format(query2, sizeof(query2), "Text%d",a);
            cache_get_field_content(i, query2,rezultat); format(text[a], 1000, rezultat);
            strcat(updatetext[a], text[a], 1000);
        }
        strcat(updatedata[updateid2], data, 128);
        strcat(updateversiune[updateid2], versiune, 128);
        updateid2++;
        if(updateid == 1) format(textafisare, sizeof(textafisare), "{0066FF}ID\t{FFFFFF}Versiune\t{0066FF}Data\t{FFFFFF}Vizionari\n{FFFFFF}Update {0066FF}# %d\t{FFFFFF}%s\t{0066FF}%s{FFFFFF}\t%d",updateid, versiune,data, vizionari);
        if(updateid > 1) format(textafisare, sizeof(textafisare), "%s\n{FFFFFF}Update {0066FF}# %d\t{FFFFFF}%s\t{0066FF}%s{FFFFFF}\t%d",textafisare,updateid,versiune,data, vizionari);
    }
    ShowPlayerDialog(playerid, DIALOG_UPDATES, DIALOG_STYLE_TABLIST_HEADERS, "SERVER: Updates", textafisare, "Seleteaza","Anuleaza");
    cache_delete(cache);
    return 1;
}
CMD:au(playerid, params[])
{
    if(PlayerInfo[playerid][pAdmin] >= 7)
    {
        new versiune[128],data[128],query[1000];
        if(sscanf(params, "s[128]", versiune)) return SCM(playerid, -1, "USAGE: /addupdate [nume versiune]");
        new year, month,day;
        getdate(year, month, day);
        format(data, sizeof(data), "%02d.%02d.%d",day,month,year);
        mysql_format(SQL, query, sizeof(query), "INSERT INTO `updates` (`Versiune`,`Data`) VALUES ('%s','%s')",versiune,data);
        mysql_tquery(SQL, query, "", "");
        SCM(playerid, -1, "{0066FF}UPDATE: {FFFFFF}Versiunea a fos adaugata cu succes.");
    }
    return 1;
}
CMD:aul(playerid, params[])
{
    if(PlayerInfo[playerid][pAdmin] >= 7)
    {
        new versiune[512],query[1000],linie,id;
        if(sscanf(params, "iis[128]", linie,id,versiune)) return SCM(playerid, -1, "USAGE: /addupdateline [linie (0-40)] [id] [descriere]");
        mysql_format(SQL, query, sizeof(query), "UPDATE `updates` SET `Text%d`='%s' WHERE `ID`='%d'",linie,versiune,id);
        mysql_tquery(SQL, query, "", "");
        SCM(playerid, -1, "{0066FF}UPDATE: {FFFFFF}Linia a fos adaugata cu succes.");
    }
    return 1;
}

int= nr natural(intreg) gen 1;124;-437;

float = nr cu virgula gen1.23; 4.53

varchar = string(sir de caractere). 

Tu trebuie sa faci un tabel cu numele updates in care creezi randurile aferente

  • 0
Posted
29 minutes ago, Maddo said:

Salut, m am inspirat de pe acest forum de la o problema, cineva pusese aceasta comanda intr-un reply, si am zis sa o incerc si eu, chiar mi s a parut interesant.
ce face comanda ? Simplu, e o comanda de tip /updates, doar ca este dinamica, poti creea un update direct din joc, doar ca trebuie niste salvari in baza de date, iar eu nu ma prea pricep cu baza de date, ma poate ajuta si pe mine cineva la inserarea in tabelul updates din baza de date ? Cum sa pun alea cu INT si etc, astea sunt comenzile

CMD:updates(playerid, params[])
{
    new query[1000],versiune[128],updateid,vizionari,text[40][1000],rezultat[1000],query2[256],textafisare[2000],data[128], updateid2 = 0, updatetext[2000], updatedata[2000], updateversiune[2000];
    mysql_format(SQL, query, sizeof(query), "SELECT * FROM `updates` WHERE `ID` > '0'");
    new Cache: cache = mysql_query(SQL, query);
    if(cache_get_row_count() < 1) return SCM(playerid, COLOR_GREY, "Nu exista updateuri adaugate in lista.");
    for(new i, j = cache_get_row_count(); i != j; i++)
    {
        updateid = cache_get_field_content_int(i, "ID");
        vizionari = cache_get_field_content_int(i, "Vizionari");
        cache_get_field_content(i, "Versiune", rezultat); format(versiune, 128, rezultat);
        cache_get_field_content(i, "Data", rezultat); format(data, 128, rezultat);
        for(new a = 0; a < 40; a++)
        {
            format(query2, sizeof(query2), "Text%d",a);
            cache_get_field_content(i, query2,rezultat); format(text[a], 1000, rezultat);
            strcat(updatetext[a], text[a], 1000);
        }
        strcat(updatedata[updateid2], data, 128);
        strcat(updateversiune[updateid2], versiune, 128);
        updateid2++;
        if(updateid == 1) format(textafisare, sizeof(textafisare), "{0066FF}ID\t{FFFFFF}Versiune\t{0066FF}Data\t{FFFFFF}Vizionari\n{FFFFFF}Update {0066FF}# %d\t{FFFFFF}%s\t{0066FF}%s{FFFFFF}\t%d",updateid, versiune,data, vizionari);
        if(updateid > 1) format(textafisare, sizeof(textafisare), "%s\n{FFFFFF}Update {0066FF}# %d\t{FFFFFF}%s\t{0066FF}%s{FFFFFF}\t%d",textafisare,updateid,versiune,data, vizionari);
    }
    ShowPlayerDialog(playerid, DIALOG_UPDATES, DIALOG_STYLE_TABLIST_HEADERS, "SERVER: Updates", textafisare, "Seleteaza","Anuleaza");
    cache_delete(cache);
    return 1;
}
CMD:au(playerid, params[])
{
    if(PlayerInfo[playerid][pAdmin] >= 7)
    {
        new versiune[128],data[128],query[1000];
        if(sscanf(params, "s[128]", versiune)) return SCM(playerid, -1, "USAGE: /addupdate [nume versiune]");
        new year, month,day;
        getdate(year, month, day);
        format(data, sizeof(data), "%02d.%02d.%d",day,month,year);
        mysql_format(SQL, query, sizeof(query), "INSERT INTO `updates` (`Versiune`,`Data`) VALUES ('%s','%s')",versiune,data);
        mysql_tquery(SQL, query, "", "");
        SCM(playerid, -1, "{0066FF}UPDATE: {FFFFFF}Versiunea a fos adaugata cu succes.");
    }
    return 1;
}
CMD:aul(playerid, params[])
{
    if(PlayerInfo[playerid][pAdmin] >= 7)
    {
        new versiune[512],query[1000],linie,id;
        if(sscanf(params, "iis[128]", linie,id,versiune)) return SCM(playerid, -1, "USAGE: /addupdateline [linie (0-40)] [id] [descriere]");
        mysql_format(SQL, query, sizeof(query), "UPDATE `updates` SET `Text%d`='%s' WHERE `ID`='%d'",linie,versiune,id);
        mysql_tquery(SQL, query, "", "");
        SCM(playerid, -1, "{0066FF}UPDATE: {FFFFFF}Linia a fos adaugata cu succes.");
    }
    return 1;
}

CREATE TABLE IF NOT EXISTS `updates` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `text` text CHARACTER SET utf8 COLLATE utf8_romanian_ci NOT NULL,
  `date` text NOT NULL,
  `byAdmin` text NOT NULL,
  `For` int(11) NOT NULL,
  `link` text NOT NULL,
  `title` varchar(128) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;

Sau ai un link aici Descarca, si stergi Updates al tau din baza de date si il importezi pe asta.

Ai nevoie de ajutor in scripting si nu ai bani? Te pot ajuta cu mare drag. Dar asta nu inseamna sa iti lucrez un Sistem de joc complet, daca ai nevoie de ajutor ma poti contacta pe Discord.ezgif-2-3a38433e2465.gif.9283810e304f5e405309769455e5e14b.gif

  • 0
Posted

Error ID: 1054, Error: Unknown column 'Text1' in 'field list'
Callback:
gQuery: UPDATE `updates` SET `Text1`='Adaugata comanda [/updates].' WHERE `ID`='1'

Asta e singura eroare pe care o primesc cand incerc sa tastez comanda de adaugare a unei linii in update, gen acel text, nu exista in baza de date, nu stiu cum sa-l trec, restul este corect

  • 0
Posted
#define 	DIALOG_UPDATES		7598

 

CMD:updates(playerid, params[])
{
  ShowPlayerDialog(playerid, DIALOG_UPDATES, DIALOG_STYLE_MSGBOX, "Server updates", "[30.03.2017]\n- Inca nu s-au adaugat update-uri.", "Okay", "");
  return 1;
}

Mult mai simplu.

 

  • 0
Posted
Acum 7 ore, @SanJay a spus:

#define 	DIALOG_UPDATES		7598

 


CMD:updates(playerid, params[])
{
  ShowPlayerDialog(playerid, DIALOG_UPDATES, DIALOG_STYLE_MSGBOX, "Server updates", "[30.03.2017]\n- Inca nu s-au adaugat update-uri.", "Okay", "");
  return 1;
}

Mult mai simplu.

Mult mai simplu daca citeai putin ce problema are.

  • 0
Posted
21 hours ago, Maddo said:

Error ID: 1054, Error: Unknown column 'Text1' in 'field list'
Callback:
gQuery: UPDATE `updates` SET `Text1`='Adaugata comanda [/updates].' WHERE `ID`='1'

Asta e singura eroare pe care o primesc cand incerc sa tastez comanda de adaugare a unei linii in update, gen acel text, nu exista in baza de date, nu stiu cum sa-l trec, restul este corect

Frate, parerea mea, lasa comanda asta de o parte, ai panel si forum unde poti posta update.urile, nu iti algromera gm.ul cu prostii si coneziuni la baza de date, parerea mea. Poti face din panel sau de pe forum. Acum sper sa intelegi ce vreau sa iti spun. E mai simplu din forum sa scri un update, cat si din panel.

Ai nevoie de ajutor in scripting si nu ai bani? Te pot ajuta cu mare drag. Dar asta nu inseamna sa iti lucrez un Sistem de joc complet, daca ai nevoie de ajutor ma poti contacta pe Discord.ezgif-2-3a38433e2465.gif.9283810e304f5e405309769455e5e14b.gif

  • 0
Posted

imi era mult mai usor sa adaug asta cu /updates dynamic, adica nu mai umpleam atatea linii in gm cu fiecare update, dar oricum, mersi frumos baieti

  • 0
Posted (edited)
1 oră în urmă, Maddo a spus:

imi era mult mai usor sa adaug asta cu /updates dynamic, adica nu mai umpleam atatea linii in gm cu fiecare update, dar oricum, mersi frumos baieti

mysql_format(SQL, query, sizeof(query), "UPDATE `updates` SET `Text`='%d%s' WHERE `ID`='%d'",linie,versiune,id);

plus ca acel cod pt baza de date nu contine toate coloanele necesare.

Edited by valivaly96
  • 0
Posted

Vezi ca ai copiat comanda dintr-un gm de pe net, intra in baza de date a gm-ului si ia tot ce scrie la updates, apoi completezi la asta

CREATE TABLE IF NOT EXISTS `updates` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `text` text CHARACTER SET utf8 COLLATE utf8_romanian_ci NOT NULL,
  `date` text NOT NULL,
  `byAdmin` text NOT NULL,
  `For` int(11) NOT NULL,
  `link` text NOT NULL,
  `title` varchar(128) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;

 

maxresdefault.jpg

 

 

 

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • 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.